C语言 百分网手机站

计算机考试C语言考试题及答案

时间:2020-11-07 10:57:31 C语言 我要投稿

2017年计算机考试C语言考试题及答案

  山不厌高,水不厌深。 骄傲是跌跤的前奏。以下是小编为大家搜索整理2017年计算机考试C语言考试题及答案,希望能给大家带来帮助!更多精彩内容请及时关注我们应届毕业生考试网!

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

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

  (1) 下列设备中只能作为输入设备的是

  A.磁盘驱动器

  B.鼠标器

  C.存储器

  D.显示器

  (2) 下列DOS组合控制键中,能使标准输出同时送到屏幕与打印机的是

  A.Ctrl+Break

  B.Ctrl+P

  C.Ctrl+C

  D.Ctrl+H

  (3) 通常所说的386机是

  A.8位机

  B.16位机

  C.32位机

  D.64位机

  (4) 二进制数01100100转换成十六进制数是

  A.64

  B.63

  C.100

  D.144

  (5) 十六进制数100转换成十进制数是

  A.1024

  B.512

  C.256

  D.128

  (6) 对于存有重要数据的5.25英寸软盘,防止计算机病毒感染的方法是

  A.不要与有病毒的软盘放在一起

  B.在写保护口贴上胶条

  C.保持软盘清洁

  D.定期对软盘格式化

  (7) 在启动DOS系统时,启动盘的根录下必须包含的文件是

  A.START.COM

  B.COMMAND.COM

  C.FORMAT.COM

  D.BOOT.COM

  (8) DOS系统启动后,下列文件中常驻内存的是

  A.DOS.COM

  B.COMMAND.COM

  C.DISKCOPY.COM

  D.SYS.COM

  (9) 下列名字中,不能作为DOS磁盘文件名的是

  A.JTU

  B.93GZ.PRG

  C.CON

  D.ATT&T.BAS

  (10) 下列命令中属于内部命令的是

  A.SYS

  B.COMP

  C.DIR

  D.DISKCOMP

  (11) 下列文件名中,能与ABC?.?匹配的是

  A.AB12.C

  B.ABCD.FOR

  C.ABC.TXT

  D.ABCD.C

  (12) 要列出当前盘当前目录中第三个字符为"B"的所有文件的清单,可使用的命令为

  A.DIR **B*.*

  B.DIR ??B*.?

  C.DIR ??B.*

  D.DIR ??B*.*

  (13) 设当前盘为C盘,其根目录下有两个子目录D1与D2,且当前目录为D1,若要进入子目录D2,可使用的命令为

  A.CD D2

  B.CD D2\

  C.CD \D2

  D.CD D1\D2

  (14) 设当前盘为C盘,A盘当前目录为根目录。为了删除A盘目录\WS下扩展名为.TXT的所有文件,可用的命令为

  A.DEL WS\*.TXT

  B.DEL \WS\*.TXT

  C.DEL A:\WS\?.TXT

  D.DEL A:WS\*.TXT

  (15) 设当前盘为C盘,C盘当前目录为\AAA\BBB\A\B\X。下列命令中能正确执行的是

  A.MD \AAA\BBB\A

  B.MD X

  C.MD \

  D.MD \AAA\BBB\A\B\X

  (16) 在下列各组的两个命令中,根据给定的条件,执行效果互相等价的是

  A.DEL \DOS 与 RD \DOS(当前盘上有目录\DOS)

  B.FORMAT A:与 DEL A:*.*(A盘为启动盘)

  C.DISKCOPY A: B: 与 COPY A:*.* B:(A盘为启动盘)

  D.COPY F1 F2 与 TYPE F1>F2(当前盘当前目录下有文件F1)

  (17) 为了在1.2MB的高密驱动器A中格式化一张360KB的启动盘,可用的命令为

  A.FORMAT A:

  B.FORMAT A:/S/1

  C.FORMAT A:/S/4

  D.FORMAT A:/S

  (18) 要在打印机上输出当前盘当前目录下扩展名为.TXT的所有文件内容,正确的命令为

  A.COPY *.TXT PRN

  B.COPY *.TXT>PRN

  C.TYPE *.TXT PRN

  D.TYPE *.TXT>PRN

  (19) 设B盘目录结构如下:

  设B盘的.当前目录为\F2,要将A盘当前目录下的文件P.BAS复制到B盘的F3子目录中,可用的命令为

  A.COPY P.BAS B:

  B.COPY A:P.BAS B:\

  C.COPY A:P.BAS B:\F3

  D.COPY A:P.BAS B:F3\

  (20) 设当前盘为A盘,要将B盘当前目录下的两个文件A.TXT与X.TXT连接后以文件名Y.TXT存放到A盘的当前目录中,可用的命令为

  A.COPY A.TXT+X.TXT A:Y.TXT

  B.COPY B:A.TXT+X.TXT A:Y.TXT

  C.COPY B:A.TXT+B:X.TXT >Y.TXT

  D.COPY B:A.TXT+B:X.TXT Y.TXT(21) C语言中最简单的数据类型包括

  A.整型、实型、逻辑型

  B.整型、实型、字符型

  C.整型、字符型、逻辑型

  D.整型、实型、逻辑型、字符型

  (22) C语言中,运乍对象必须是整型数的运算符是

  A.%

  B.\

  C.%和\

  D.* *

  (23) 为表示关系x≥y≥z,应使用C语言表达式

  A.(x>=y)&&(y>=z) B(x>=y)AND(y>=z)

  C.(x>=y>=z)

  D.(x>=y)&(y>=z)

  (24) 下述对C语言字符数组的描术中错误的是

  A.字符数组可以存放字符串

  B.字符数组中的字符串可以整体输入、输出

  C.可以在赋值语句中通过赋值运算符"="对字符数组整体赋值

  D.不可以用关系运算符对字符数组中的字符串进行比较

  (25) 设有如下定义: int x=10,y=3,z; 则语句

  printf("%d\n",z=(x%y,x/y)); 的输出结果是

  A.1

  B.0

  C.4

  D.3

  (26) 以下程序的输出结果是

  main()

  { int x=10,y=10;

  printf("%d %d\n",x--,--y); }

  A.10 10

  B.9 9

  C.9 10

  D.10 9

  (27) 定义如下变题和数组:

  int i;

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

  则下面语句的输出结果是

  for(i=0;i<3;i++) printf("%d",x[i][2-1]);

  A.1 5 9

  B.1 4 7

  C.3 5 7

  D.3 6 9

  (28) 若要求在if后一对圆括号中表示a不等于0的关系,则能正确表示这一关系的表达式为

  A.a<>0

  B.!a

  C.a=0

  D.a

  (29) 阅读程序:

  #include

  main()

  { int a[10]={1,2,3,4,5,6,7,8,9,0},*p;

  p=a;

  printf("%x\n",p);

  printf("%x\n",p+9); }

  该程序有两个printf 语句, 如果第一个printf 语句输出的是194, 则第二个printf语句的输出结果是

  A.203

  B.204

  C.1a4

  D.1a6

  (30) 设有如下函数定义:

  int f(char *s)

  { char *p=s;

  while(*p!=’\0’) p++;

  return(p-s); }

  如果在主程序中用下面的语句调用上述函数,则输出结果为

  printf("%d\n",f("goodbey!"));

  A.3

  B.6

  C.8

  D.0

  (31) 以下说法中正确的是

  A.C语言程序总是从第一个的函数开始执行

  B.在C语言程序中,要调用的函数必须在main()函数中定义

  C.C语言程序总是从main()函数开始执行

  D.C语言程序中的main()函数必须放在程序的开始部分

  (32) 执行下面的程序后,a的值为

  main()

  { int a,b;

  for (a=1,b=1;a<=100;a++)

  { if(b>=20) break;

  if(b%3==1) {b+=3; continue; }

  b-=5; } }

  A.7

  B.8

  C.9

  D.10

  (33) 以下程序段的输出结果是

  int x=3;

  do { printf("=",x-=2);} while(!(--x));

  A.1

  B.3 0

  C.1-2

  D.死循环

  (34) 定义如下变量: int n=10; 则下列循环的输出结果是

  while(n>7)

  { n--;

  printf("%d\n",n); }

  A.10

  B.9

  C.10

  D.9

  9 8 9 8

  8 7 8 7

  7 6

  (35) 两次运行下面的程序,如果从键盘上分别输入6和4,则输出结果是

  main( )

  { int x;

  scanf("%d",&x);

  if(x + + >5) printf("%d",x);

  else printf("%d\n",x - -); }

  A.7和5

  B.6和3

  C.7和4

  D.6和4(36) 设有如下定义: char *aa[2]={"abcd","ABCD"}; 则以下就法中正确的是

  A.aa数组成元素的值分别是"abcd"和ABCD"

  B.aa是指针变量,它指向含有两个数组元素的字符型一维数组

  C.aa数组的两个元素分别存放的是含有4个字符的一维字符数组的首地址

  D.aa数组的两个元素中各自存放了字符’a’和’A’的地址

  (37) 以下程序的输出结果是

  main( )

  { int a=-1,b=4,k;

  k=(+ +a〈0)&&!(b - -〈=0);

  printf("%d%d%d\n",k,a

  B.; }

  A.104

  B.103

  C.003

  D.004

  (38) 设有以下定义:

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

  int (*prt)[3]=a,*p=a[0];

  则下列能够正确表示数组元素a[1][2]的表达式是

  A.*((*prt+1) [2])

  B.*(*(p+5))

  C.(*prt+1)+2