当前位置:IT认证>计算机二级

问题:

[单选] 下列程序的输出结果是(  )。
#include<stdio.h>
main()
{  int a=0,i;
for(i=1;i<5:i++)
{  switch(i)
{  case 0:
case 3:a+=1;
case】:
case 2:a=2;
default:a+=3;
}
}
printf(”%d”,a);
)

A . 19
B . 18
C . 6
D . 8

标准库函数fgets(S,n,file)的功能是(  )。 从文件file中读取长度为n的字符串存入字符数组s中。 从文件file中读取长度不超过n-1个字符的字符串放到字符数组S中。 从文件file中读到n个字符串存入字符数组s中。 从文件file中读取长度为n-1个字符的字符串存人字符数组s中。 下面程序段的输出结果是(  )。int i=32770:printf(”%d\n”,i); 32769。 32767。 -32766。 输出不确定数。 若有定义和语句:int*。pp,*P,a=20,b=10;pp=8Lp;P=&a;P=&.b;printf(”%d,%d\n”,*P,**PP);则输出结果是(  )。 20,10。 20,20。 10,20。 10,10。 #define能作简单的替代,用宏来替代计算多项式5*X*x 4-5*x+5的值的函数f,正确的宏定义语句为(  )。 #define f(x)  5*x*x+5*X+5。 #define f5*x*x+5*x+5。 #define f(a)  (5*a”a+5*a+5)。 #define(5*x*x+5+x+5)  f(x)。 链表不具有的特点是(  )。 不必事先估计存储空间。 町随机访问任意元素。 插入、删除不需要移动元素。 所需空间与线性表长度成正比。 下列程序的输出结果是(  )。
#include<stdio.h>
main()
{  int a=0,i;
for(i=1;i<5:i++)
{  switch(i)
{  case 0:
case 3:a+=1;
case】:
case 2:a=2;
default:a+=3;
}
}
printf(”%d”,a);
)
参考答案:

  参考解析

A。【解析】本题考查switchcase开关语句,default退出继续循环。当i=1时,执行casel,因为没有break语句,所以依次往下运行,a=a+2-2,a=a+3=5;当i=2时,执行case2,没有break语句,所以依次往下运行,a-a+2-7,a=a+3=10;当i=3时,执行case3,当a=a+1=11,没有break语句,所以依次往下运行,a=a+2=13,a=a+3=16;当i=4时,没有case语句,则执行default,a=a十3—19,
i=5不成立,循环结束。

在线 客服