拾级考试网将带你了解计算机考试题库,希望你可以从中得到收获并且得到一个满意的答案。

计算机考试试卷题库的题目类型都有什么?

计算机考试试卷题库的题目类型都有什么?

一、选择题((1)—(40)每题1分,(41)—(50)每题2分,共60分)

下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上,答在试卷上不得分。

(1) 在32位计算机中,一个字长所占的字节数为( )。

A) 1

B) 2

C) 4

D) 8

(2) 与十进制数511等值的十六进制数为( )。

A) 1FF

B) 2FF

C) 1FE

D) 2FE

(3) 能将高级语言编写的源程序转换成目标程序的是( )。

A) 编程程序

B) 编译程序

C) 解释程序

D) 链接程序

(4) 在计算机系统中,存储一个汉字的国标码所需要的字节数为( )。

A) 1

B) 2

C) 3

D) 4

(5) 下列带有通配符的文件名中,能表示文件ABC.TXT的是( )。

A) *BC.

B) A.*

C) BC.*

D) .

(6) 在多媒体计算机系统中,不能用以存储多媒体信息的是( )。

A) 光缆

B) 软盘

C) 硬盘

D) 光盘

(7) DOS命令“COPY/?”的功能是( )。

A) 将当前盘当前目录中的所有文件复制到当前盘的根目录下

B) 将当前盘当前目录中所有以单个字符命名的文件复制到当前盘的根目录下

C) 以提示方式复制文件

D) 显示COPY命令的帮助信息

(8) 在Windows环境下,若要将当前活动窗口存入剪贴板,则可以按( )。

A) Ctrl+PrintScreen键

B) Ctrl+PrintScreen键

C) Shift+PrintScreen键

D) PrintScreen键

(9) 在Windows环境下,单击当前应用程序窗口中的“关闭”按钮,其功能是( )。

A) 将当前应用程序转为后台运行

B) 退出Windows后再关机

C) 退出Windows后重新启动计算机

D) 终止当前应用程序的运行

(10) 在Windows环境中,粘贴按钮是( )。

A) ctrl+A

B) ctrl+C

C) ctrl+X

D) ctrl+V

(11) 以下叙述中正确的是( )。

A) 构成C程序的基本单位是函数

B) 可以在一个函数中定义另一个函数

C) main()函数必须放在其它函数之前

D) 所有被调用的函数一定要在调用之前进行定义

(12) 以下选项中合法的实型常数是( )。

A) 5E2.0

B) E-3

C) .2E0

D) 1.3E

(13) 以下选项中合法的用户标识符是( )。

A) long

B) _2Test

C) 3Dmax

D) A.dat

(14) 已知大写字母A的ASCII码值是65,小写字母a的ASCII码是97,则用八进制表示的字符常量‘101’是( )。

A) 字符A

B)字符a

C)字符e

D)非法的常量

(15) 以下非法的赋值语句是( )。

A) n=(i=2,++i);

B)j++;

C) ++(i+1);

D)x=j>0;

(16) 设a和b均为double型变量,且a=5.5、b=2.5,则表达式(int)a+b/b的值是( )。

A)6.500000

B)6

C) 5.500000

D) 6.000000

(17) 已知i、j、k为int型变量,若从键盘输入:1,2,3,使i的值为1、j的值为2、k的值为3,以下选项中正确的输入语句是( )。

A) scanf(“%2d%2d%2d”,&i,&j,&k);

B) scanf(“%d %d %d”,&i,&j,&k);

C) scanf(“%d,%d,%d”,&i,&j,&k);

D) scanf(“i=%d,j=%d,k=%d”,&i,&j,&k);

(18) 与数学式子 对应的C语言表达式是( )。

A) 3*x^n(2*x-1)

B) 3*x**n(2*x-1)

C) 3*pow(x,n)*(1/(2*x-1))

D) 3*pow(n,x)/(2*x-1)

(19) 设有定义:long x=-123456L;,则以下能够正确输出变量x值的语句是( )。

A)printf(“x=%dn”,x);

B) printf(“x=%1dn”,x);

C)printf(“x=%8dLn”,x);

D)printf(“x=%LDn”,x);

(20) 若有以下程序:

main()

{ int k=2,i=2,m;

m=(k+=i*=k);printf(“%d,%dn”,m,i);

}

执行后的输出结果是( )。

A) 8,6

B) 8,3

C) 6,4

D) 7,4

(21) 已有定义:int x=3,y=4,z=5;,则表达式!(x+y)+z-1 && y+z/2的值是( )。

A) 6

B) 0

C) 2

D) 1

(22) 有一函数, ,以下程序段中不能根据x值正确计算出y值的是( )。

A) if(x>0) y=1; B) y=0;

else if(x==0) y=0; if(x>0) y=1;

else y=-1; else if(x<0) y=-1;

C)y=0; D)if(x>=0)

if(x>=0); if(x>0) y=1;

if(x>0) y=1 ; else y=0;

else y=-1; else y=-1;

(23) 以下选项中,与k=n++完全等价的表达式是( )。

A) k=n,n=n+1

B) n=n+1,k=n

C) k=++n

D) k+=n+1

(24) 以下程序的功能是:按顺序读入10名学生4门课程的成绩,计算出每位学生的平均分并输出,程序如下:

main()

{ int n,k;

float score ,sum,ave;

sum=0.0;

for(n=1;n<=10;n++)

{ for(k=1;k<=4;k++)

{ scanf(“%f”,&score); sum+=score;}

ave=sum/4.0;

printf(“NO%d:%fn”,n,ave);

}

}

上述程序运行后结果不正确,调试中发现有一条语句出现在程序中的位置不正确。这条语句是( )。

A) sum=0.0;

B) sum+=score;

C) ave=sun/4.0;

D) printf(“NO%d:%fn”,n,ave);

(25) 有以下程序段

int n=0,p;

do{scanf(“%d”,&p);n++;}while(p!=12345 &&n<3);

此处do—while循环的结束条件是( )。

A) P的值不等于12345并且n的值小于3

B) P的值等于12345并且n的值大于等于3

C) P的值不等于12345或者n的值小于3

D) P的值等于12345或者n的值大于等于3

(26) 有以下程序

main()

{ int a=15,b=21,m=0;

switch(a%3)

{ case 0:m++;break;

case 1:m++;

switch(b%2)

{ default:m++;

case 0:m++;break;

}

}

printf(“%dn”,m);

}

程序运行后的输出结果是( )。

A) 1

B) 2

C) 3

D) 4

(27) C语言中,函数值类型的定义可以缺省,此时函数值的隐含类型是( )。

A) void

B) int

C) float

D) double

(28) 若有说明:int n=2,*p=&n,*q=p;,则以下非法的赋值语句是( )。

A) p=q;

B) *p=*q;

C) n=*q;

D) p=n;

(29) 有以下程序

float fun(int x,int y)

{ return(x+y); }

main()

{ int a=2,b=5,c=8;

printf(“%3.0fn”,fun(int)fun(a+c,b),a-c));

}

程序运行后的输出结果是( )。

A) 编译出错

B) 9

C) 21

D) 9.0

(30) 有以下程序

void fun(char *c,int d)

{ *c=*c+1;d=d+1;

printf(“%c,%c,”,*c,d);

}

main()

{ char a=’A’,b=’a’;

fun(&b,a); printf(“%c,%cn”,a,b);

}

程序运行后的输出结果是( )。

A)B,a,B,a

B) a,B,a,B

C) A,b,A,b

D) b,B,A,b

(31) 以下程序中函数sort的功能是对a所指数组中的数据进行由大到小的排序

void sort(int a[],int n)

{ int i,j,t;

for(i=0;i

for(j=i+1,j

if(a[i]

}

main()

{ int aa[10]={1,2,3,4,5,6,7,8,9,10},i;

sort(&aa[3],5);

for(i=o;i<10;i++) print(“%d,”,aa[i]);

printf(‘n”);

}

程序运行后的输出结果是( )。

A)1,2,3,4,5,6,7,8,9,10

B) 10,9,8,7,6,5,4,3,2,1,

C) 1,2,3,8,7.6.5.4.9,10

D) 1,2,10,9,8,7,6,5,4,3

(32) 有以下程序

int f(int n)

{ if (n==1) return 1;

else return f(n-1)+1;

}

main()

{ int i,j=0;

for(i=i;i<3;i++) j+=f(i);

printf(“%dn”,j);

}

程序运行后的输出结果是( )。

A) 4

B) 3

C) 2

D) 1

(33) 有以下程序

main()

{ char a[ ]={‘a’,‘b’,‘c’,‘d’, ‘e’, ‘f’, ‘g’,‘h’,‘’}; int i,j;

i=sizeof(a); j=strlen(a);

printf(“%d,%db”i,j);

}

程序运行后的输出结果是( )。

A)9,9

B)8,9

C)1,8

D)9,8

(34) 以下程序中函数reverse的功能是将a所指数组中的内容进行逆置。

void reverse(int a[ ],int n)

{ int i,t;

for(i=0;i{ t=a[i]; a[i]=a[n-1-i];a[n-1-i]=t;}

}

main()

{ int b[10]={1,2,3,4,5,6,7,8,9,10}; int i,s=0;

reverse(b,8);

for(i=6;i<10;i++) s+=b[i];

printf(“%dn”,s);

}

程序运行后的输出结果是( )。

A) 22

B) 10

C) 34

D) 30

(35) 有以下程序

main()

{ int aa[4][4]={{1,2,3,4},{5,6,7,8},{3,9,10,2},{4,2,9,6}};

int i,s=0

for(i=0;i<4;i++) s+=aa[i][1];

printf(“%dn”,s);

}

程序运行后的输出结果是( )。

A) 11

B) 19

C) 13

D) 20

(36) 有以下程序

#include

main()

{ char *p=“abcdeOfghjik”;

printf(“%dn”,strlen(p));

}

程序运行后的输出结果是( )。

A) 12

B) 15

C) 6

D) 5

(37) 程序中头文件typel.h 的内容是:

#define N 5

#define M1 N*3

程序如下:

#define “type1.h”

#define M2 N*2

main()

{ int i;

i=M1+M2; printf(“%dn”,i);

}

程序编译后运行的输出结果是:( )。

A) 10

B) 20

C) 25

D) 30

(38) 有以下程序

#include

main()

{ FILE *fp; int i=20,j=30,k,n;

fp=fopen(“d1.dat”“w”);

fprintf(fp,“%dn”,i);fprintf(fp,“%dn”j);

fclose(fp);

fp=fopen(“d1.dat”, “r”);

fp=fscanf(fp,“%d%d”,&k,&n); printf(“%d%dn”,k,n);

fclose(fp);

}

程序运行后的输出结果是( )。

A) 20 30

B) 20 50

C) 30 50

D) 30 20

(39) 以下叙述中错误的是( )。

A) 二进制文件打开后可以先读文件的末尾,而顺序文件不可以

B) 在程序结束时,应当用fclose函数关闭已打开的文件

C) 在利用fread函数从二进制文件中读数据时,可以用数组名给数组中所有元素读入数据

D) 不可以用FILE定义指向二进制文件的文件指针

(40) 有以下程序

#include

main(int argc,char *argv[])

{ int i,len=0;

for(i=1;iprintf(“%dn”,len);

}

程序编译连接后生成的可执行文件是ex1.exe,若运行时输入带参数的命令行是:

ex1 abcd efg 10

则运行的结果是:( )。

A) 22

B) 17

C) 12

D) 9

(41) 有以下程序

int fa(int x)

{ return x*x; }

int fb(int x)

{ return x*x*x; }

int f(int (*f1)(),int (*f2)(),int x)

{ return f2(x)-f1(x); }

main()

{ int i;

i=f(fa,fb,2); printf(“%dn”,i);

}

程序运行后的输出结果是( )。

A) -4

B) 1

C) 4

D) 8

(42) 有以下程序

int a=3;

main()

{ int s=0;

{ int a=5; s+=a++; }

s+=a++;printf(“%dn”,s);

}

程序运行后的输出结果是( )。

A) 8

B) 10

C) 7

D) 11

(43) 有以下程序

void ss(char *s,char t)

{ while(*s)

{ if(*s==t) *s=t-‘a’+’A’;

s++;

}

}

main()

{ char str1[100]=“abcddfefdbd”,c=’d’;

ss(str1,c); printf(“%sn”,str1);

}

程序运行后的输出结果是( )。

A) ABCDDEFEDBD

B) abcDDfefDbD

C) abcAAfefAbA

D) Abcddfefdbd

(44) 有以下程序

struct STU

{ char num[10]; float score[3]; };

main()

{ struct stu s[3]={{“20021”,90,95,85},

{“20022”,95,80,75},

{“20023”,100,95,90}},*p=s;

int i; float sum=0;

for(i=0;i<3,i++)

sum=sum+p->score[i];

printf(“%6.2fn”,sum);

}

程序运行后的输出结果是( )。

A) 260.00

B) 270.00

C) 280.00

D) 285.00

(45) 设有如下定义:

struck sk

{ int a;

float b;

}data;

int *p;

若要使P指向data中的a域,正确的赋值语句是( )。

A) p=&a;

B) p=data.a;

C) p=&data.a;

D) *p=data.a;

(46) 有以下程序

#include

struct NODE

{ int num; struct NODE *next; };

main()

{ struct NODE *p,*Q,*R;

p=(struct NODE*)malloc(sizeof(struct NODE));

q=(struct NODE*)malloc(sizeof(struct NODE));

r=(struct NODE*)malloc(sizeof(struct NODE));

p->num=10; q->num=20; r->num=30;

p->next=q;q->next=r;

printf(“%dn”,p->num+q->next->num);

}

程序运行后的输出结果是( )。

A) 10

B) 20

C) 30

D) 40

(47) 若有以下说明和定义

typedef int *INTEGER;

INTEGER p,*q;

以下叙述正确的是( )。

A) P是int型变量

B) p是基类型为int的指针变量

C) q是基类型为int的指针变量

D) 程序中可用INTEGER代替int类型名

(48) 有以下程序

main()

{ unsigned char a,b,c;

a=0x3; b=a|0x8; c=b<<1;

printf(“%d%dn”,b,c);

}

程序运行后的输出结果是( )。

A) –11 12

B) –6 –13

C) 12 24

D) 11 22

(49) 有以下程序

#include

main()

{ char *p,*q;

p=(char*)malloc(sizeof(char)*20); q=p;

scanf(“%s%s”,p,q); printf(“%s%sn”,p,q);

}

若从键盘输入:abc def,则输出结果是:( )。

A) def def

B) abc def

C) abc d

D) d d

(50) 以下程序中函数f的功能是将n个字符串按由大到小的顺序进行排序。

#include

void f(char p[][10],int n)

{ char t[20]; int i,j;

for(i=0;ifor(j=i+1;jif(strcmp(p[i],p[j])<0)

{ strcpy(t,p[i]);strcpy(p[i],p[j]);strcpy(p[j],t);}

}

main()

{ char p[][10]={“abc”,“aabdfg”,“abbd”,“dcdbe”,“cd”};int i;

f(p,5); printf(“%dn”,strlen(p[0]));

}

程序运行后的输出结果是( )。

A) 6

B) 4

C) 5

D) 3

二、填空题(每空2分,共40分)

请将答案分别写在答题卡中序号为【1】至【20】的横线上,答在试卷上不得分。

1、计算机软件分为系统软件和应用软件,操作系统属于 [1] 。

2、在DOS环境下,代表键盘和显示器的设备文件名为 [2] 。

3、支持Internet基本服务的协议是 [3] 。

4、从Windows环境进入MS-DOS方式后,返回Windows环境的DOS命令为 [4] 。

5、某微型机的运算为2MIPS,则该微型机每秒执行 [5] 条指令。

6、设有定义:int n,*k=&n;以下语句将利用指针变量k读写变量n中的内容,请将语句补充完整。

scanf(“%d, ” [6] );

printf(“%dn”, [7] 。);

7、以下程序运行后的输出结果是 [8] 。

main()

{ int x=10,y=20,t=0;

if(x==y)t=x;x=y;y=t;

printf(“%d,%d n”,x,y);

}

8、以下程序运行后的输出结果是 [9] 。

main()

{ int x=15;

while(x>10 && x<50)

{ x++;

if(x/3){x++;break;}

else continue;

}

printf(“%dn”,x);

}

9、有以下程序:

#include

main()

{ char c;

while((c=getchar( ))!=’’) putchar(--c);

}

程序运行时,如果从键盘输入:Y?N?,则输出结果为 [10] 。

10、以下程序运行后的输出结果是 [11] 。

void fun(int x,int y)

{ x=x+y;y=x-y;x=x-y;

printf(“%d,%d,”,x,y); }

main()

{ int x=2,y=3;

fun(x,y);

printf(“%d,%dn”,x,y);

}

11、以下函数的功能是计算s=1+ + +……+ ,请填空。

double fun(int n)

{ double s=0.0,fac=1.0; int i;

for(i=1,i<=n;i++)

{ fac=fac [12] ;

s=s+fac;

}

return s;

}

12 fun函数的功能是:首先对a所指的N行N列的矩阵,找出各行中的最大的数,再求这N个最大值中的最小的那个数作为函数值返回。请填空。

#include

#define N 100

int fun(int(*a)[N])

{ int row,col,max,min;

for(row=0;row{ for(max=a[row][0],col=1;colif( [13] )max=a[row][col];

if( row==0)min=max;

else if( [14] )min=max;

}

return min;

}

13、函数sstrcmp()的功能是对两个字符串进行比较。当s所指字符串和t所指字符串相等时,返回值为0;当s所指字符串大于t所指字符串时,返回值大于0;当s所指字符串小于t所指字符串时,返回值小于0(功能等同于库函数strcmp())。请填空。

#include

int sstrcmp(char *s,char *t)

{ while(*s&&*t&& *s== [15] )

{ s++;t++;}

return [16] ;

}

14、下面程序的运行结果是 [17] 。

#define N 10

#define s(x) x*x

#define f(x) (x*x)

main()

{ int i1,i2;

i1=1000/s(N); i2=1000/f(N);

printf(“%d %dn”,i1,i2);

}

15、下面程序的运行结果是: [18] 。

void swap(int *a,int *b)

{ int *t;

t=a; a=b; b=t;

}

main()

{ int x=3,y=5,*p=&x,*q=&y;

swap(p,q);

printf(“%d%dn”,*p,*q);

}

16、下面程序的运行结果是: [19] 。

typedef union student

{ char name[10];

long sno;

char sex;

float score[4];

}STU;

main()

{ STU a[5];

printf(“%dn”,sizeof(a));

}

(17) 函数sstrcmp()的功能是对两个字符串进行比较。当s 所指字符串和t所指字符相等时,返回值为0;当s所指字符串大于t所指字符串时,返回值大于0;当s所指字符串小于t所指字符串时,返回值小于0(功能等同于库函数strcmp())。请填空。

#include

int sstrcmp(char *s,char *t)

{while(*s&&*t&&*s==【19】)

{s++;t++; }

return 【20】;

}

广东开放大学

计算机应用考试试题含答案

2017年计算机应用考试试题(含答案)

一、单项选择题

1.下列关于软件的叙述中,正确的是( )。

A.计算机软件分为系统软件和应用软件两大类

B.Windows就是广泛使用的应用软件之一

C.所谓软件就是程序

D.软件可以随便复制使用,不用购买

【答案】A.

【解析】软件系统可分为系统软件和应用软件两大类。

2.计算机按性能可以分为超级计算机、大型计算机、小型计算机、微型计算机和()。

A.服务器 B.掌中设备 C.工作站 D.笔记本

【答案】C.

【解析】按计算机性能分类是最常用的分类法,可将计算机分为超级计算机、大型计算机、小型计算机、工作站和微型计算机。

3.为了防治计算机病毒,应采取的正确措施之一是( )。

A.每天都要对硬盘和软盘进行格式化

B.必须备有常用的杀毒软件

C.不用任何磁盘

D.不用任何软件

【答案】B.

【解析】由于计算机病毒日新月异,必须备有常用的杀毒软件且要不断地对杀毒软件进行升级,以保持防、杀病毒的有效性。

4.操作系统管理用户数据的单位是( )。

A.扇区 B.文件 C.磁道 D.文件夹

【答案】B.

【解析】操作系统中,文件管理负责存取文件和对整个文件库的管理。文件名是一批有关联的数据的集合,操作系统通过文件名对文件进行存取和管理。

5.下列叙述中,错误的是( )。

A.内存储器RAM中主要存储当前正在运行的程序和数据

B.高速缓冲存储器(Cache)一般采用DRAM构成

C.外部存储器(如硬盘)用来存储必须永久保存的程序和数据

D.存储在RAM中的信息会因断电而全部丢失

【答案】 B.

【解析】Cache即高速缓冲存储器是位于CPU和主存储器DRAM(Dynamic RAM)之间的规模较小,但很高的存储器,通常由SRAM组成。

6.通常所说的微型机主机是指( )。

A.CPU和内存 B.CPU和硬盘

C.CPU、内存和硬盘 D. CPU、内存与CD-ROM

【答案】A.

【解析】内存又称为主存。CPU与内存合在一起一般称为主机。

7.下列对计算机的分类,不正确的是( )。

A.按使用范围可以分为通用计算机和专用计算机

B.按性能可以分为超级计算机、大型计算机、小型计算机、工作站和微型计算机

C.按CPU芯片可分为单片机、中板机、多芯片机和多板机

D.按字长可以分为8位机、16位机、32位机和64位机

【答案】C.

【解析】按芯片可分为286、386、486、Pentium、PII、PⅢ、Pentium4和Pentium D机。分成单片机、单板机等,是按照结构划分的。

8.现代计算机中采用二进制数制是因为二进制数的优点是( )。

A.代码表示简短,易读

B.物理上容易实现且简单可靠;运算规则简单;适合逻辑运算

C.容易阅读,不易出错

D.只有0、l两个符号,容易书写

【答案】B.

【解析】现代计算机中采用二进制数制是因为二进制数的优点是物理上容易实现且简单可靠;运算规则简单;适合逻辑运算。

9.完整的计算机软件指的是( )。

A.程序、数据与有关的文档 B.系统软件与应用软件

C.操作系统与应用软件 D.操作系统与办公软件

【答案】A.

【解析】所谓软件是指为方便使用计算机和提高使用效率而组织的程序,以及用于开发、使用和维护的有关文档。

10.能直接与CPU交换信息的存储器是( )。

A.硬盘存储器 B.CD-ROM

C.内存储器 D.软盘存储器

【答案】C.

【解析】内存储器是计算机主机的一个组成都分,它与CPU直接进行信息交换;而外存储器不能与CPU直接进行信息交换,CPU只能直接读取内存中的数据。

11.下列叙述中,正确的是

A.计算机的体积越大,其功能越强

B.CD-ROM的容量比硬盘的容量大

C.存储器具有记忆功能,故其中的信息任何时候都不会丢失

D.CPU是中央处理器的简称

【答案】D.

【解析】中央处理器:Central Processing Unit,缩写为CPU,主要包括运算器(ALU)和控制器(CU)两大部件。

12.下列字符中,其ASCII码值最小的一个是( )。

A.控制符 B.9 C.A D.a

【答案】A.

【解析】在ASCII码表中,根据码值由小到大的排列顺序是:控制符、数字符、大写英文字母、小写英文字母。

13.一条指令必须包括

A.操作码和地址码 B.信息和数据

C.时间和信息 D.都不是

【答案】A.

【解析】一条指令就是对计算机下达的命令,必须包括操作码和地址码(或称操作数)两部分。前者指出该指令完成操作的类型,后者指出参与操作的数据和操作结果存放的位置。

14.以下哪一项不是预防计算机病毒的措施

A.建立备份 B.专机专用

C.不上网 D.定期检查

【答案】C.

【解析】网络是病毒传播的最大来源,预防计算机病毒的措施很多,但是采用不上网的措施显然是防卫过度。

15.计算机操作系统通常具有的5大功能是( )。

A.CPU的管理、显示器管理、键盘管理、打印机管理和鼠标器管理

B.硬盘管理、软盘驱动器管理、CPU的管理、显示器管理和键盘管理

C.CPU的管理、存储管理、文件管理、设备管理和作业管理

D.启动、打印、显示、文件存取和关机

【答案】 C.

【解析】计算机操作系统通常具有的5大功能是CPU的管理、存储管理、文件管理、设备管理和作业管理。

16.微机上广泛使用的Windows2000是( )。

A.多用户多任务操作系统 B.单用户多任务操作系统

C.实时操作系统 D.多用户分时操作系统

【答案】B.

【解析】Microsoft公司开发的DOS是一单用户单任务系统,而Windows操作系统则是一单用户多任务系统,经过十几年的发展,已从Windows 3.1发展到目前的Windows NT、Windows 2000、Windows XP和Vista。

17.为了提高软件开发效率,开发软件时应尽量采用( )。

A.汇编语言 B.机器语言 C.指令系统 D.高级语言

【答案】D.

【解析】高级语言的使用,大大提高了编写程序的效率,改善了程序的可读性。

18.CPU能够直接访问的存储器是

A.软盘 B.硬盘

C.RAM D.CD-ROM

【答案】C.

【解析】 CPU读取和写入数据都是通过内存来完成的。

19.下列各存储器中,存取最快的一种是( )。

A.Cache B.动态RAM(DRAM) C.CD-ROM D.硬盘

【答案】A.

【解析】所谓Cache,即高速缓冲存储器,是位于CPU和主存储器DRAM(Dynamic RAM)之间的规模较小的但很高的存储器,通常由SRAM组成。

20.SRAM指的是( )。

A.静态随机存储器 B.静态只读存储器

C.动态随机存储器 D.动态只读存储器

【答案】A.

【解析】内存分为随机存储器(RAM)和只读存储器(ROM)。RAM分为静态随机处理器(SRAM)

21.一般而言,硬盘的容量大概是内存容量的( )。

A.40倍 B.60倍 C.80倍 D.100倍

【答案】 C.

【解析】通常每8个二进制位组成一个字节。字节的容量一般用KB、MB、GB、TB来表示,它们之间的换算关系:1KB=1024B;1MB=l024KB: 1GB=l024MB; 1TB=1024GB。20GB=20×1024MB。

22.影响一台计算机性能的关键部件是( )。

A.CD-ROM B.硬盘 C.CPU D.显示器

【答案】C.

【解析】 CPU决定了计算机的主要性能。

23.在计算机硬件技术指标中,度量存储器空间大小的基本单位是( )。

A.字节(Byte) B.二进位(bit)

C.字(WorD. D.双字(Double WorD.

【答案】 A.

【解析】 Byte简写为B,通常每8个二进制位组成一个字节。字节的容量一般用KB、MB、GB、TB来表示.

24.一张软磁盘上存储的内容,在该盘处于什么情况时,其中数据可能丢失

A.放置在声音嘈杂的`环境中若干天后 B.携带通过海关的Ⅹ射线监视仪后

C.被携带到强磁场附近后 D.与大量磁盘堆放在一起后

【答案】C.

【解析】磁盘是在金属或塑料片上涂一层磁性材料制成的,由于强大磁场的影响,可能会改变磁盘中的磁性结构。

25.计算机病毒是指能够侵入计算机系统,并在计算机系统中潜伏、传播、破坏系统正常工作的一种具有繁殖能力的( )。

A.流行性感冒病毒 B.特殊小程序

C.特殊微生物 D.源程序

【答案】B.

【解析】计算机病毒是一种特殊的具有破坏性的计算机程序,它具有自我复制能力,可通过非授权入侵而隐藏在可执行程序或数据文件中。

26.操作系统对磁盘进行读/写操作的单位是( )。

A.磁道 B.字节 C.扇区 D.KB

【答案】C.

【解析】操作系统对磁盘进行读/写操作的单位是扇区。

27.下列叙述中,正确的是( )。

A.内存中存放的是当前正在执行的应用程序和所需的数据

B.内存中存放的是当前暂时不用的程序和数据

C.外存中存放的是当前正在执行的程序和所需的数据

D.内存中只能存放指令

【答案】A.

【解析】内存中存放的是当前正在执行的应用程序和所需的数据。

28.把硬盘上的数据传送到计算机内存中去的操作称为( )。

A.读盘 B.写盘 C.输出 D.存盘

【答案】A.

【解析】把存储在硬盘上的程序传送到指定的内存区域中称为读盘。

29.在计算机中,每个存储单元都有一个连续的编号,此编号称为( )。

A.地址 B.住址 C.位置 D.序号

【答案】A.

【解析】为了便于存放,每个存储单元必须有唯一的编号(称为“地址”),通过地址可以找到所需的存储单元,取出或存入信息。这如同旅馆中每个房间必须有唯一的房问号,才能找到该房间内的人.

30.在计算机的硬件技术中,构成存储器的最小单位是( )。

A.字节(Byte) B.二进制位(bit)

C.字(WorD. D.双字(Double WorD.

【答案】B.

【解析】每一个能代表0和1的电子线路称为一个二进制位,是数据的最小单位。

二、填空题

1、 自计算机问世至今已经经历了四个时代,划分时代的主要依据是计算机的构成元件。

2、世界上第一台电子数字计算机采用的逻辑元件是电子管。

3、早期的计算机体积大、耗能高、慢,其主要原因是制约于元器件。

4、当前的计算机一般被认为是第四代计算机,它所采用的逻辑元件是大规模集成电路。

5、个人计算机属于微型计算机。

6、计算机可以进行自动处理的基础是存储程序。

7、计算机进行数值计算时的高精确度主要决定于基本字长。

8、计算机具有逻辑判断能力,主要取决于编制的软件。

9、计算机的通用性使其可以求解不同的算术和逻辑问题,这主要取决于计算机的可编程性。

10、当前计算机的应用领域极为广泛,但其应用最早的领域是科学计算。

11、最早设计计算机的目的是进行科学计算,其主要计算的问题面向于军事_。

17、计算机应用中最诱人、也是难度最大且目前研究最为活跃的领域之一是人工智能。

18、当前气象预报已广泛采用数值预报方法,这种预报方法会涉及计算机应用中的科学计算和数据处理。

19、利用计算机对指纹进行识别、对图像和声音进行处理属于的应用领域是信息处理。

20、计算机最主要的工作特点是存储程序与自动控制。

22、利用计算机来模仿人的高级思维活动称为人工智能

23、计算机网络的目标是实现资源共享和信息传输。

24、所谓的信息是指处理后的数据

25、时至今日,计算机仍采用程序内存或称存储程序原理,原理的提出者是冯·诺依曼。

26、冯·诺依曼计算机的基本原理是程序存储。

27、计算机的工作原理是程序存储。

30、计算机系统中,最贴近硬件的系统软件是操作系统_。

31、计算机程序设计语言中,可以直接被计算机识别并执行的是机器语言。

32、计算机断电后,会使存储的数据丢失的存储器是RAM。

33、保持微型计算机正常运行必不可少的输入输出设备是键盘和显示器。

34、在下面的描述中,正确的是键盘是输入设备,显示器是输出设备。

35、构成计算机物理实体的部件被称为计算机硬件。

36、组成计算机主机的主要是中央处理器和主存储器

37、以下不属于外部设备是中央处理器和主存储器。

40、在微型计算机的各种设备中,既可输入又可输出的设备是磁盘驱动器。

41、冯.诺依曼结构计算机的五大基本构件包括运算器、存储器、输入设备、输出设备和控制器。

42、计算机中,运算器的主要功能是完成算术和逻辑运算

43、计算机中用来保存程序和数据,以及运算的中间结果和最后结果的装置是内存和外存。

48、指令的操作码表示的是做什么操作。

49、为解决某一特定的问题而设计的指令序列称为程序。

50、计算机能计算有大量数据和程序语句的问题,起主要作用的因素是大容量内外存储器。

;

计算机基础考试试题6

一、选择题

1、计算机中数据的表示形式是( C )

A)八进制 B)十进制 C)二进制 D)十六进制

2、计算机硬件能直接识别和执行的只有( D )

A)高级语言 B)符号语言 C)汇编语言 D)机器语言

3、具有多媒体功能的微型计算机系统中,常用的CD-ROM是( B )

A)只读型大容量软盘 B)只读型光盘 C)只读型硬盘 D)半导体只读存储器

4、微机中1K字节表示的二进制位数是 ( D )

A)1000 B)8*1000 C)1024 D)8*1024

5、WINDOWS98操作系统是一个( A )

A)单用户多任务操作系统 B)单用户单任务操作系统

C)多用户单任务操作系统 D)多用户多任务操作系统

6、把WINDOWS的窗口和对话框作一比较,窗口可以移动和改变大小,而对话框( B )

A)既不能移动,也不能改变大小 B)仅可以移动,不能改变大小

C)仅可以改变大小,不能移动 D)既能移动,也能改变大小

7、在WINDOWS中,“任务栏”的作用是( D )

A)显示系统的所有功能 B)只显示当前活动窗口名

C)只显示正在后台工作的窗口名 D)实现窗口之间的切换

8、通过WINDOWS98中的“开始”菜单中的“运行”项( C )

A)仅可以运行DOS批处理命令 B)仅可以运行DOS的内部命令

C) 可以运行DOS的外部命令和可执行文件 D)仅可以运行DOS的外部命令

9、在word主窗口的右上角,可以同时显示的按钮依次是( C )

A)最小化、还原和最大化 B)还原、最大化和关闭

C)最小化、还原和关闭 D)还原和最大化、最小化

10)在word的编辑状态,执行编辑菜单中“复制”命令后( B )

A)将选择的内容复制到插入点处 B)将选择的内容复制到剪贴板

B) 插入点所在段落内容被复制到剪贴板 D)光标所在段落内容被复制到剪贴板

11、在WINDOWS98中,文件被放入回收站后( B )。

A)文件已被删除,不能恢复 B)该文件可以恢复

C)该文件无法永久删除 D)该文件虽已永久删除,但可以安全恢复

12、 Windows98的许多应用程序的“文件”菜单中,都有“保存”和“另存为”两个命令,下列说法中正确的是 C 。

A)“保存”命令只能用原文件名存盘,“另存为”不能用原文件名

B)“保存”命令不能用原文件名存盘,“另存为”只能用原文件名

C)“保存”命令只能用原文件名存盘,“另存为”也能用原文件名

D)“保存”和“另存为”命令都用任意文件名存盘

13、在word的编辑状态,进行字体设置操作后,按新设置的字体显示的文字是(B )

A)插入点所在段落中的文字 B)文档中被选择的文字

C)插入点所在行中的文字 D)文档的全部文字

14、存储400个24*24点阵汉字字形所需的存储容量是( D )

A)225KB B)75KB C)37.5KB D)28. 125KB

15、下面是关于解释程序和编译程序的论述,其中正确的一条是( C )

A)编译程序、解释程序均能产生目标程序。

B) 编译程序、解释程序均不能产生目标程序

C)编译程序能产生目标程序,解释程序不能产生目标程序

D) 编译程序不能产生目标程序而解释程序能产生目标程序

16、下列四个不同数字表示的数中,数值最大的是( A )

A)二进制数11011101 B)八进制数334 C)十进制数219 D)十六进制数DA

17、设WINDOWS98桌面上已经有某应用程序的图标,要运行该程序,可以( C )

A)用鼠标左键单击该图标 B)用鼠标右键单击该图标

C)用鼠标左键双击该图标 D)用鼠标右键双击该图标

18、在WINDOWS98的“资源管理器”窗口中,如果想一次选定多个分散的文件或文件夹,正确的操作是( B )

A)按住CTRL键,用鼠标右键逐个选取。B)按住CTRL键,用鼠标左键逐个选取。

C)按住SHIFT键,用鼠标右键逐个选取。D)按住SHIFT键,用鼠标左键逐个选取。

19、在word的编辑状态,下列四种组合键中,可以从当前输入汉字状态转换到输入ASSCII字符状态的组合键是( A )

A)CTRL+空格键 B)ALT+CTRL C)SHIFT+空格键 D)ALT+空格键

20、当个人计算机以拔号方式接入INTERNET网时,必须使用的设备是( B )

A)网卡 B)调制解调器(MODEM)C)电话机 D)浏览器软件

21、用户可用内存通常是指( A )

A)RAM B)ROM C)CACHE D)CD-ROM

22、下面( D )不能与CPU直接交换数据

A)RAM B)ROM C)CACHE D)CD-ROM

23、在计算机中表示数据的最小单位是( A )

A)位 B)字节 C)字 D)字长

24、单击窗口的( A ),可以把窗口拖放到桌面的任何地方。

A)标题栏 B)按钮 C)菜单栏工作区 D)窗口边框

25、WINDOWS98操作系统通过( B )实施对文件的管理

A)文件 B)文件夹 C)文件名 D)目录

26、中文word97 是在( D )环境下运行的

A)UCDOS B)WINDOWS3.X C)DOS D)WINDOWS98

27、同时打开多个word文档时,处于活动的文档窗口有( A )个

A)1 B)2 C)3 D)多个

28、在word中新建文档的默认扩展名为( D )

A)TXT B)PCX C)RTF D)DOC

29、启动excel之后,自动建立一个名为( D )的空白工作簿

A)SHEET1 B)SHEET C)BOOK D)BOOK1

30、默认情况下,启动excel工作窗口之后,每个工作簿由三张工作表组成,工作表名字为( C )

A)工作表1、工作表2和工作表3 B)BOOK1、BOOK2和BOOK3

C)SHEET1、SHEET2和SHEET3 D)工作簿1、工作簿2和工作簿3

二、判断题

1、操作系统也是一种应用软件。(╳)

2、计算机断电后,内存储器RAM中的信息都会全部丢失。(∨)

3、计算机病毒是能够通过自身复制而起破坏作用的计算机程序。(∨)

4、只有在一台计算机上将软盘格式化以后,它才可在各种计算机上使用。(╳)

5、打印机只能打印字符和表格,不能打印图形。(╳)

6、一个完整的计算机系统应包括硬件系统和软件系统。(∨)

7、通过“回收站”可恢复被删除的文件或文件夹。(∨)

8、word软件只能编辑文字和表格,不能处理图形。(╳)

9、语言处理程序是把用一种程序设计语言表示的程序转化为与之等价的另一种程序设计语言表示的程序的程序。(∨)

10一个汉字的机内码在计算机中用2 个字节表示。(∨)

资源来源: office教程网() 详细出处参考:http://;ArtRead.asparticleid=666

计算机考试试卷题库的题目类型都有什么?

一、选择题((1)—(40)每题1分,(41)—(50)每题2分,共60分)

下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上,答在试卷上不得分。

(1) 在32位计算机中,一个字长所占的字节数为( )。

A) 1

B) 2

C) 4

D) 8

(2) 与十进制数511等值的十六进制数为( )。

A) 1FF

B) 2FF

C) 1FE

D) 2FE

(3) 能将高级语言编写的源程序转换成目标程序的是( )。

A) 编程程序

B) 编译程序

C) 解释程序

D) 链接程序

(4) 在计算机系统中,存储一个汉字的国标码所需要的字节数为( )。

A) 1

B) 2

C) 3

D) 4

(5) 下列带有通配符的文件名中,能表示文件ABC.TXT的是( )。

A) *BC.

B) A.*

C) BC.*

D) .

(6) 在多媒体计算机系统中,不能用以存储多媒体信息的是( )。

A) 光缆

B) 软盘

C) 硬盘

D) 光盘

(7) DOS命令“COPY/?”的功能是( )。

A) 将当前盘当前目录中的所有文件复制到当前盘的根目录下

B) 将当前盘当前目录中所有以单个字符命名的文件复制到当前盘的根目录下

C) 以提示方式复制文件

D) 显示COPY命令的帮助信息

(8) 在Windows环境下,若要将当前活动窗口存入剪贴板,则可以按( )。

A) Ctrl+PrintScreen键

B) Ctrl+PrintScreen键

C) Shift+PrintScreen键

D) PrintScreen键

(9) 在Windows环境下,单击当前应用程序窗口中的“关闭”按钮,其功能是( )。

A) 将当前应用程序转为后台运行

B) 退出Windows后再关机

C) 退出Windows后重新启动计算机

D) 终止当前应用程序的运行

(10) 在Windows环境中,粘贴按钮是( )。

A) ctrl+A

B) ctrl+C

C) ctrl+X

D) ctrl+V

(11) 以下叙述中正确的是( )。

A) 构成C程序的基本单位是函数

B) 可以在一个函数中定义另一个函数

C) main()函数必须放在其它函数之前

D) 所有被调用的函数一定要在调用之前进行定义

(12) 以下选项中合法的实型常数是( )。

A) 5E2.0

B) E-3

C) .2E0

D) 1.3E

(13) 以下选项中合法的用户标识符是( )。

A) long

B) _2Test

C) 3Dmax

D) A.dat

(14) 已知大写字母A的ASCII码值是65,小写字母a的ASCII码是97,则用八进制表示的字符常量‘101’是( )。

A) 字符A

B)字符a

C)字符e

D)非法的常量

(15) 以下非法的赋值语句是( )。

A) n=(i=2,++i);

B)j++;

C) ++(i+1);

D)x=j>0;

(16) 设a和b均为double型变量,且a=5.5、b=2.5,则表达式(int)a+b/b的值是( )。

A)6.500000

B)6

C) 5.500000

D) 6.000000

(17) 已知i、j、k为int型变量,若从键盘输入:1,2,3,使i的值为1、j的值为2、k的值为3,以下选项中正确的输入语句是( )。

A) scanf(“%2d%2d%2d”,&i,&j,&k);

B) scanf(“%d %d %d”,&i,&j,&k);

C) scanf(“%d,%d,%d”,&i,&j,&k);

D) scanf(“i=%d,j=%d,k=%d”,&i,&j,&k);

(18) 与数学式子 对应的C语言表达式是( )。

A) 3*x^n(2*x-1)

B) 3*x**n(2*x-1)

C) 3*pow(x,n)*(1/(2*x-1))

D) 3*pow(n,x)/(2*x-1)

(19) 设有定义:long x=-123456L;,则以下能够正确输出变量x值的语句是( )。

A)printf(“x=%dn”,x);

B) printf(“x=%1dn”,x);

C)printf(“x=%8dLn”,x);

D)printf(“x=%LDn”,x);

(20) 若有以下程序:

main()

{ int k=2,i=2,m;

m=(k+=i*=k);printf(“%d,%dn”,m,i);

}

执行后的输出结果是( )。

A) 8,6

B) 8,3

C) 6,4

D) 7,4

(21) 已有定义:int x=3,y=4,z=5;,则表达式!(x+y)+z-1 && y+z/2的值是( )。

A) 6

B) 0

C) 2

D) 1

(22) 有一函数, ,以下程序段中不能根据x值正确计算出y值的是( )。

A) if(x>0) y=1; B) y=0;

else if(x==0) y=0; if(x>0) y=1;

else y=-1; else if(x<0) y=-1;

C)y=0; D)if(x>=0)

if(x>=0); if(x>0) y=1;

if(x>0) y=1 ; else y=0;

else y=-1; else y=-1;

(23) 以下选项中,与k=n++完全等价的表达式是( )。

A) k=n,n=n+1

B) n=n+1,k=n

C) k=++n

D) k+=n+1

(24) 以下程序的功能是:按顺序读入10名学生4门课程的成绩,计算出每位学生的平均分并输出,程序如下:

main()

{ int n,k;

float score ,sum,ave;

sum=0.0;

for(n=1;n<=10;n++)

{ for(k=1;k<=4;k++)

{ scanf(“%f”,&score); sum+=score;}

ave=sum/4.0;

printf(“NO%d:%fn”,n,ave);

}

}

上述程序运行后结果不正确,调试中发现有一条语句出现在程序中的位置不正确。这条语句是( )。

A) sum=0.0;

B) sum+=score;

C) ave=sun/4.0;

D) printf(“NO%d:%fn”,n,ave);

(25) 有以下程序段

int n=0,p;

do{scanf(“%d”,&p);n++;}while(p!=12345 &&n<3);

此处do—while循环的结束条件是( )。

A) P的值不等于12345并且n的值小于3

B) P的值等于12345并且n的值大于等于3

C) P的值不等于12345或者n的值小于3

D) P的值等于12345或者n的值大于等于3

(26) 有以下程序

main()

{ int a=15,b=21,m=0;

switch(a%3)

{ case 0:m++;break;

case 1:m++;

switch(b%2)

{ default:m++;

case 0:m++;break;

}

}

printf(“%dn”,m);

}

程序运行后的输出结果是( )。

A) 1

B) 2

C) 3

D) 4

(27) C语言中,函数值类型的定义可以缺省,此时函数值的隐含类型是( )。

A) void

B) int

C) float

D) double

(28) 若有说明:int n=2,*p=&n,*q=p;,则以下非法的赋值语句是( )。

A) p=q;

B) *p=*q;

C) n=*q;

D) p=n;

(29) 有以下程序

float fun(int x,int y)

{ return(x+y); }

main()

{ int a=2,b=5,c=8;

printf(“%3.0fn”,fun(int)fun(a+c,b),a-c));

}

程序运行后的输出结果是( )。

A) 编译出错

B) 9

C) 21

D) 9.0

(30) 有以下程序

void fun(char *c,int d)

{ *c=*c+1;d=d+1;

printf(“%c,%c,”,*c,d);

}

main()

{ char a=’A’,b=’a’;

fun(&b,a); printf(“%c,%cn”,a,b);

}

程序运行后的输出结果是( )。

A)B,a,B,a

B) a,B,a,B

C) A,b,A,b

D) b,B,A,b

(31) 以下程序中函数sort的功能是对a所指数组中的数据进行由大到小的排序

void sort(int a[],int n)

{ int i,j,t;

for(i=0;i

for(j=i+1,j

if(a[i]

}

main()

{ int aa[10]={1,2,3,4,5,6,7,8,9,10},i;

sort(&aa[3],5);

for(i=o;i<10;i++) print(“%d,”,aa[i]);

printf(‘n”);

}

程序运行后的输出结果是( )。

A)1,2,3,4,5,6,7,8,9,10

B) 10,9,8,7,6,5,4,3,2,1,

C) 1,2,3,8,7.6.5.4.9,10

D) 1,2,10,9,8,7,6,5,4,3

(32) 有以下程序

int f(int n)

{ if (n==1) return 1;

else return f(n-1)+1;

}

main()

{ int i,j=0;

for(i=i;i<3;i++) j+=f(i);

printf(“%dn”,j);

}

程序运行后的输出结果是( )。

A) 4

B) 3

C) 2

D) 1

(33) 有以下程序

main()

{ char a[ ]={‘a’,‘b’,‘c’,‘d’, ‘e’, ‘f’, ‘g’,‘h’,‘’}; int i,j;

i=sizeof(a); j=strlen(a);

printf(“%d,%db”i,j);

}

程序运行后的输出结果是( )。

A)9,9

B)8,9

C)1,8

D)9,8

(34) 以下程序中函数reverse的功能是将a所指数组中的内容进行逆置。

void reverse(int a[ ],int n)

{ int i,t;

for(i=0;i{ t=a[i]; a[i]=a[n-1-i];a[n-1-i]=t;}

}

main()

{ int b[10]={1,2,3,4,5,6,7,8,9,10}; int i,s=0;

reverse(b,8);

for(i=6;i<10;i++) s+=b[i];

printf(“%dn”,s);

}

程序运行后的输出结果是( )。

A) 22

B) 10

C) 34

D) 30

(35) 有以下程序

main()

{ int aa[4][4]={{1,2,3,4},{5,6,7,8},{3,9,10,2},{4,2,9,6}};

int i,s=0

for(i=0;i<4;i++) s+=aa[i][1];

printf(“%dn”,s);

}

程序运行后的输出结果是( )。

A) 11

B) 19

C) 13

D) 20

(36) 有以下程序

#include

main()

{ char *p=“abcdeOfghjik”;

printf(“%dn”,strlen(p));

}

程序运行后的输出结果是( )。

A) 12

B) 15

C) 6

D) 5

(37) 程序中头文件typel.h 的内容是:

#define N 5

#define M1 N*3

程序如下:

#define “type1.h”

#define M2 N*2

main()

{ int i;

i=M1+M2; printf(“%dn”,i);

}

程序编译后运行的输出结果是:( )。

A) 10

B) 20

C) 25

D) 30

(38) 有以下程序

#include

main()

{ FILE *fp; int i=20,j=30,k,n;

fp=fopen(“d1.dat”“w”);

fprintf(fp,“%dn”,i);fprintf(fp,“%dn”j);

fclose(fp);

fp=fopen(“d1.dat”, “r”);

fp=fscanf(fp,“%d%d”,&k,&n); printf(“%d%dn”,k,n);

fclose(fp);

}

程序运行后的输出结果是( )。

A) 20 30

B) 20 50

C) 30 50

D) 30 20

(39) 以下叙述中错误的是( )。

A) 二进制文件打开后可以先读文件的末尾,而顺序文件不可以

B) 在程序结束时,应当用fclose函数关闭已打开的文件

C) 在利用fread函数从二进制文件中读数据时,可以用数组名给数组中所有元素读入数据

D) 不可以用FILE定义指向二进制文件的文件指针

(40) 有以下程序

#include

main(int argc,char *argv[])

{ int i,len=0;

for(i=1;iprintf(“%dn”,len);

}

程序编译连接后生成的可执行文件是ex1.exe,若运行时输入带参数的命令行是:

ex1 abcd efg 10

则运行的结果是:( )。

A) 22

B) 17

C) 12

D) 9

(41) 有以下程序

int fa(int x)

{ return x*x; }

int fb(int x)

{ return x*x*x; }

int f(int (*f1)(),int (*f2)(),int x)

{ return f2(x)-f1(x); }

main()

{ int i;

i=f(fa,fb,2); printf(“%dn”,i);

}

程序运行后的输出结果是( )。

A) -4

B) 1

C) 4

D) 8

(42) 有以下程序

int a=3;

main()

{ int s=0;

{ int a=5; s+=a++; }

s+=a++;printf(“%dn”,s);

}

程序运行后的输出结果是( )。

A) 8

B) 10

C) 7

D) 11

(43) 有以下程序

void ss(char *s,char t)

{ while(*s)

{ if(*s==t) *s=t-‘a’+’A’;

s++;

}

}

main()

{ char str1[100]=“abcddfefdbd”,c=’d’;

ss(str1,c); printf(“%sn”,str1);

}

程序运行后的输出结果是( )。

A) ABCDDEFEDBD

B) abcDDfefDbD

C) abcAAfefAbA

D) Abcddfefdbd

(44) 有以下程序

struct STU

{ char num[10]; float score[3]; };

main()

{ struct stu s[3]={{“20021”,90,95,85},

{“20022”,95,80,75},

{“20023”,100,95,90}},*p=s;

int i; float sum=0;

for(i=0;i<3,i++)

sum=sum+p->score[i];

printf(“%6.2fn”,sum);

}

程序运行后的输出结果是( )。

A) 260.00

B) 270.00

C) 280.00

D) 285.00

(45) 设有如下定义:

struck sk

{ int a;

float b;

}data;

int *p;

若要使P指向data中的a域,正确的赋值语句是( )。

A) p=&a;

B) p=data.a;

C) p=&data.a;

D) *p=data.a;

(46) 有以下程序

#include

struct NODE

{ int num; struct NODE *next; };

main()

{ struct NODE *p,*Q,*R;

p=(struct NODE*)malloc(sizeof(struct NODE));

q=(struct NODE*)malloc(sizeof(struct NODE));

r=(struct NODE*)malloc(sizeof(struct NODE));

p->num=10; q->num=20; r->num=30;

p->next=q;q->next=r;

printf(“%dn”,p->num+q->next->num);

}

程序运行后的输出结果是( )。

A) 10

B) 20

C) 30

D) 40

(47) 若有以下说明和定义

typedef int *INTEGER;

INTEGER p,*q;

以下叙述正确的是( )。

A) P是int型变量

B) p是基类型为int的指针变量

C) q是基类型为int的指针变量

D) 程序中可用INTEGER代替int类型名

(48) 有以下程序

main()

{ unsigned char a,b,c;

a=0x3; b=a|0x8; c=b<<1;

printf(“%d%dn”,b,c);

}

程序运行后的输出结果是( )。

A) –11 12

B) –6 –13

C) 12 24

D) 11 22

(49) 有以下程序

#include

main()

{ char *p,*q;

p=(char*)malloc(sizeof(char)*20); q=p;

scanf(“%s%s”,p,q); printf(“%s%sn”,p,q);

}

若从键盘输入:abc def,则输出结果是:( )。

A) def def

B) abc def

C) abc d

D) d d

(50) 以下程序中函数f的功能是将n个字符串按由大到小的顺序进行排序。

#include

void f(char p[][10],int n)

{ char t[20]; int i,j;

for(i=0;ifor(j=i+1;jif(strcmp(p[i],p[j])<0)

{ strcpy(t,p[i]);strcpy(p[i],p[j]);strcpy(p[j],t);}

}

main()

{ char p[][10]={“abc”,“aabdfg”,“abbd”,“dcdbe”,“cd”};int i;

f(p,5); printf(“%dn”,strlen(p[0]));

}

程序运行后的输出结果是( )。

A) 6

B) 4

C) 5

D) 3

二、填空题(每空2分,共40分)

请将答案分别写在答题卡中序号为【1】至【20】的横线上,答在试卷上不得分。

1、计算机软件分为系统软件和应用软件,操作系统属于 [1] 。

2、在DOS环境下,代表键盘和显示器的设备文件名为 [2] 。

3、支持Internet基本服务的协议是 [3] 。

4、从Windows环境进入MS-DOS方式后,返回Windows环境的DOS命令为 [4] 。

5、某微型机的运算为2MIPS,则该微型机每秒执行 [5] 条指令。

6、设有定义:int n,*k=&n;以下语句将利用指针变量k读写变量n中的内容,请将语句补充完整。

scanf(“%d, ” [6] );

printf(“%dn”, [7] 。);

7、以下程序运行后的输出结果是 [8] 。

main()

{ int x=10,y=20,t=0;

if(x==y)t=x;x=y;y=t;

printf(“%d,%d n”,x,y);

}

8、以下程序运行后的输出结果是 [9] 。

main()

{ int x=15;

while(x>10 && x<50)

{ x++;

if(x/3){x++;break;}

else continue;

}

printf(“%dn”,x);

}

9、有以下程序:

#include

main()

{ char c;

while((c=getchar( ))!=’’) putchar(--c);

}

程序运行时,如果从键盘输入:Y?N?,则输出结果为 [10] 。

10、以下程序运行后的输出结果是 [11] 。

void fun(int x,int y)

{ x=x+y;y=x-y;x=x-y;

printf(“%d,%d,”,x,y); }

main()

{ int x=2,y=3;

fun(x,y);

printf(“%d,%dn”,x,y);

}

11、以下函数的功能是计算s=1+ + +……+ ,请填空。

double fun(int n)

{ double s=0.0,fac=1.0; int i;

for(i=1,i<=n;i++)

{ fac=fac [12] ;

s=s+fac;

}

return s;

}

12 fun函数的功能是:首先对a所指的N行N列的矩阵,找出各行中的最大的数,再求这N个最大值中的最小的那个数作为函数值返回。请填空。

#include

#define N 100

int fun(int(*a)[N])

{ int row,col,max,min;

for(row=0;row{ for(max=a[row][0],col=1;colif( [13] )max=a[row][col];

if( row==0)min=max;

else if( [14] )min=max;

}

return min;

}

13、函数sstrcmp()的功能是对两个字符串进行比较。当s所指字符串和t所指字符串相等时,返回值为0;当s所指字符串大于t所指字符串时,返回值大于0;当s所指字符串小于t所指字符串时,返回值小于0(功能等同于库函数strcmp())。请填空。

#include

int sstrcmp(char *s,char *t)

{ while(*s&&*t&& *s== [15] )

{ s++;t++;}

return [16] ;

}

14、下面程序的运行结果是 [17] 。

#define N 10

#define s(x) x*x

#define f(x) (x*x)

main()

{ int i1,i2;

i1=1000/s(N); i2=1000/f(N);

printf(“%d %dn”,i1,i2);

}

15、下面程序的运行结果是: [18] 。

void swap(int *a,int *b)

{ int *t;

t=a; a=b; b=t;

}

main()

{ int x=3,y=5,*p=&x,*q=&y;

swap(p,q);

printf(“%d%dn”,*p,*q);

}

16、下面程序的运行结果是: [19] 。

typedef union student

{ char name[10];

long sno;

char sex;

float score[4];

}STU;

main()

{ STU a[5];

printf(“%dn”,sizeof(a));

}

(17) 函数sstrcmp()的功能是对两个字符串进行比较。当s 所指字符串和t所指字符相等时,返回值为0;当s所指字符串大于t所指字符串时,返回值大于0;当s所指字符串小于t所指字符串时,返回值小于0(功能等同于库函数strcmp())。请填空。

#include

int sstrcmp(char *s,char *t)

{while(*s&&*t&&*s==【19】)

{s++;t++; }

return 【20】;

}

广东开放大学