石河子大学
  1. A函数调用B函数,B函数调用A函数,这种调用方式是嵌套调用。

  2. A:错 B:对
    答案:错
  3. “.”称为成员分量运算符,“->”称为指向运算符。

  4. A:对 B:错
    答案:对
  5. 结构体数组是结构体与数组的结合,与普通数组的不同之处在于每个数组元素都是一个结构体类型的变量。

  6. A:错 B:对
    答案:对
  7. 指向结构体变量的指针称为结构体指针。

  8. A:错 B:对
    答案:对
  9. 若想输出b数组的十个元素,下面存在错误的程序行是2。(每个程序行前面的数字代表行号)1 main()2 { int b[10]={1,3,5,7,9,2,4,6,8,10}, k;3 for(k=0;k<10;k++,b++)4 printf(“%4d”,*b);5 }

  10. A:对 B:错
    答案:错
  11. 指针数组和指向一维数组的指针含义相同。

  12. A:错 B:对
    答案:错
  13. C语言中,字符常量只能包含一个常量(字符)。

  14. A:对 B:错
    答案:对
  15. 函数调用的一般形式是将要调用的函数名带上一对圆括号,圆括号里放的是实际参数即实参。

  16. A:错 B:对
    答案:对
  17. 预编译中的宏定义命令是以#include 开头。

  18. A:对 B:错
    答案:错
  19. 将结构体变量作参数的方法称为多值传递,效率非常高。

  20. A:错 B:对
  21. C语言中while和do-while循环的主要区别是( )。

  22. A:while的循环控制条件比do–while的循环控制条件严格 B:do-while允许从外部转到循环体内 C:do-while的循环体不能是复合语句 D:do-while的循环体至少无条件执行一次
  23. 对于以下结构定义,(*p)->str++中的++加在 。struct { int len; char *str; } *p;

  24. A:str 指向的内容上 B:指针 str 上 C:语法错误 D:指针 p 上
  25. 为了避免嵌套的if-else语句的二义性,C语言规定else总是与( )组成配对关系。

  26. A:在其之前未配对的if B:在其之前未配对的最近的if C:同一行上的if D:缩排位置相同的if
  27. 阅读下面程序段,则执行后的结果是          。#includelong fun(int n){if(n>2)return(fun(n-1)+fun(n-2));else return(2);}int main(){ printf(“%ld﹨n”,fun(5));return 0;}

  28. A:

    10

    B:

    20

    C:

    15

    D:

    25

  29. 下列语句中,哪一个可以输出26个大写英文字母()。

  30. A:for(a='A';a<='Z';printf("%c",a++)); B:for(a='A';a<='Z';printf("%c", ++a)); C:for(a='A';a<'Z';a++) printf("%c",a); D:for(a='A';a<'Z';printf("%c", ++a));
  31. 下面不是结构体类型特点的选项为 。

  32. A:结构体可以把不同类型的数据组合成一个整体 B:结构体是C语言中一种构造数据类型 C:结构体中的成员都必须是相同的数据类型 D:结构体类型中可以有不同类型的成员
  33. 以下选项中,正确的 C 语言整型常量是 。

  34. A:567 B:510000 C:-1 D:32L
  35. 若有说明:int a[3][4]={0};则下面正确的叙述是 。

  36. A:数组a中各元素都可得到初值,但其值不一定为0 B:数组a中每个元素均可得到初值0 C:只有元素a[0][0]可得到初值0 D:此说明语句不正确
  37. 以下程序的输出结果是 。int x;void fun( int x){ x*=x; printf("%d",x);}int main( ){int x=4;fun(x);printf("%d",x);{int x=0;printf("%d",++x);} printf("%d",x);return 0;}

  38. A:16,4,1,4 B:16,4,1,1 C:16,16,17,17 D:16,4,5,5
  39. 字符串"ABC"在内存占用的字节数是 。

  40. A:4 B:3 C:6 D:8
  41. 以下for循环的执行次数是    。for(x=0,y=0;(y=123)&&(x<4);x++)

  42. A:循环次数不定 B:执行4次 C:是无限循环 D:执行3次
  43. 下面描述正确的是    。

  44. A:字符串“That”小于字符串“The” B:字符个数多的字符串比字符个数少的字符串大 C:字符串“STOP ”与“STOP”相等 D:两个字符串所包含的字符个数相同时,才能比较字符串
  45. 以下运算符中,结合性与其他运算符不同的是 。

  46. A:++ B:% C:+ D:/
  47. 下列程序段的输出结果是( )#include int main(void) { int x=1,a=0,b=0; switch(x) { case 0:b++; case 1:a++; case 2:a++;b++;}printf("a=%d,b=%d\n",a,b);return 0;}

  48. A:a=1,b=0 B:a=1,b=1 C:a=2,b=1 D:a=2,b=2
  49. 下面程序段中,for循环的执行次数是___________。char *s=”\ta\018bc”;for( ;*s!=’\0’; s++) printf(“*”);

  50. A:9 B:5 C:6 D:7
  51. 有以下定义和语句:struct student { int age;int num; };struct student stu[3]={{1001,20},{1002,19},{1003,21}};int main( ){ struct student *p;p=stu;…… }则以下不正确的引用是 。

  52. A:(p++)->num B:(*p).num C:p->num D:p=&stu.age
  53. 有以下程序  #include  main()  {FILE*fp;int i,k,n;  fp=fopen("data。dat","w+");  for(i=1;i<6;i++)  {fprintf(fp,"%d",i);  if(i%3==0)fprintf(fp,"\n");  }  rewind(fp);  fscanf(fp,"%d%d",&k,&n);printf("%d%d\n",k,n);  fclose(fp);  }  程序运行后的输出结果是 。

  54. A:123 45 B:1 4 C:1 2 D:0 0
  55. 设 f是实型变量,下列表达式中不是逗号表达式的是 。

  56. A:f>0, f<10 B:f=2.0, f>0 C:f= 3.2, 1.0 D:f=(3.2, 1.0)
  57. 如果有定义语句:struct { int x, y; } s[2] = { { 1, 3 }, { 2, 7 } };则语句:printf(“%d\n”, s[0].y/s[1].x ); 输出结果为 。

  58. A:1 B:0 C:2 D:3
  59. printf("%c,%d",'a', 'a');的输出结果是 。

  60. A:a 97 B:97,a C:a,97 D:97 a
  61. 下面程序的运行结果是    。 #include main() { char str[]=“SSSWLIA”,c; int k; for(k=2;(c=str[k])!=‘\0’;k++) { switch(c) { case ‘I’: ++k; break; case ‘L’: continue; default: putchar(c); continue; } putchar(‘*’); } }

  62. A:SSW* B:SW*A C:SW D:SW*
  63. C 语言中,要求运算对象只能为整数的运算符是 。

  64. A:% B:> C:* D:/
  65. 运行下面程序时,从键盘输入数据为"2,13,5",则输出结果是( )。 #include main( ) { int a,b,c; scanf("%d,%d,%d",&a,&b,&c); switch(a) { case 1: printf("%d\n",b+c); break; case 2: printf("%d\n",b-c); break; case 3: printf("%d\n",b*c); break; case 4: { if(c!=0) {printf("%d\n",b/c);break;} else {printf("error\n");break;} } defualt: break; } }

  66. A:8 B:10 C:error D:65
  67. 对for(表达式1;;表达式3)可理解为    。

  68. A:for(表达式1;1;表达式3) B:for(表达式1; 表达式3;表达式3) C:for(表达式1;0;表达式3) D:for(表达式1; 表达式1;表达式3)
  69. 下列定义的字符数组中,语句 printf("%s\n", str[2]) ;的输出是 。static str[3][20] ={ "basic", "foxpro", "windows"};

  70. A:windows B:foxpro C:输出语句出错 D:basic
  71. 在以下一组运算符中,优先级最低的运算符是 。

  72. A:* B:= C:+ D:!=
  73. 判断字符串s1是否大于字符串s2,应当使用    。

  74. A:if(s1>s2) B:if(strcmp(s2,s1)>0) C:if(strcmp(s1,s2)) D:if(strcmp(s1,s2)>0)
  75. 有下面的程序段 char a[3],b[]=“China”; a=b; printf(“%s”,a); 则    。

  76. A:运行后将输出Chi B:运行后将输出China C:编译出错 D:运行后将输出Ch
  77. 下述程序运行结果为 。#include struct st{ int n; int *m;}*p;void main(){ int d[5]={10,20,30,40,50};struct st arr[5]={100,d,200,d+1,300,d+2,400,d+3,500,d+4};p=arr;printf("%d\t",++p->n);printf("%d\t",(++p)->n);printf("%d\n",++(*p->m));}

  78. A:101 20 30 B:101 101 10 C:101 200 21 D:200 101 21
  79. 以下程序的运行结果是( )。#include main( ) {int x=1,y=1,z=-1; x+=y+=z; printf("%d\n",x

  80. A:1 B:4 C:2 D:不确定的值
  81. 设整型变量 m,n,a,b,c,d 均为1,执行 (m=a>b)&&(n=c>d)后, m,n 的值是 。

  82. A:0,1 B:1,0 C:0,0 D:1,1
  83. 若m,x,y,z都是整型变量,则计算表达式m=(x=5,y=10,z=25)执行后,m的值为 。

  84. A:5 B:40 C:25 D:10
  85. 有以下程序。#includeint main(){int array[]={1,2,3,4,5,6,7};Int i,j,*pointer1,*pointer2;pointer1=&array[1];pointer2=&array[5];i=*pointer1**pointer2;j=*(pointer1+2)+*(pointer2+1);printf("%d,%d\n",i,j);return 0;}程序执行后的输出结果是 。

  86. A:9,5 B:5,9 C:12,11 D:11,12
  87. 以下不是无限循环的程序段是( )。

  88. A:for(i=10; ; i--) sum+=i; B:while(1){x++;} C:for(y=0,x=1;x>++y;x=i++) i=x; D:for( ; ;x++=i);
  89. 有如下程序,当输入“china?”时,程序的执行结果是( )。#include int main( ){ while(putchar(getchar( ))!='?');return 0;}

  90. A:dijob B:dijob? C:china D:china?
  91. 表达式: 10!=9的值是

  92. A:true B:0 C:非零值 D:1
  93. 以下 4 个数组定义中, 是错误的。

  94. A:int n,d[n]; B:#define N 5 long b[N]; C:char c[5]; D:int a[7];
  95. 根据下面的定义,能打印出字母 M 的语句是 。struct person{char name[10]; int age; } c[10] = { “John”, 17, “Paul”, 19, “Mary”, 18, “Adam”, 16 };

  96. A:printf(“%c”, c[3].name); B:printf(“%c”, c[3].name[1]); C:printf(“%c”, c[2].name[0]); D:printf(“%c”, c[2].name[1]);
  97. 运行以下程序段时编译出错,其原因是 。charc1='a',c2='123';printf("%c,%d\n",c1,c2);

  98. A:c2是字符变量,不能用%d格式输出 B:c2是字符变量,只能赋以字符常量 C:字符串要用"123"表示 D:'123'只能赋值给字符数组
  99. 定义以下结构体类型 struct s { char x; float f; }a[3]; 语句printf("%d",sizeof(a))的输出结果为 。

  100. A:15 B:12 C:6 D:4
  101. 设有如下定义,则对 data 中的 a 成员的正确引用是 。struct sk{ int a; float b; } data, *p = &data;

  102. A:(*p).a B:(*p).data.a C:p.data.a D:p->data.a
  103. 与语句while(!s)中的条件等价的是()。

  104. A:s=0 B:s==0 C:s!=0 D:s==1
  105. 设整型变量 i 值为2,表达式(++i)+(++i)+(++i)的结果是 。

  106. A:12 B:6 C:15 D:表达式出错
  107. 以下函数的功能是 。void fun(char *s1,char*s2){int i;char*s =s1;for(; *s2!= '\0';s2++) {for(j=0, s1=s;*s1!= '\0';s1++) if(*s1!=*s2) s[j++]=*s1; s[j]='\0'; }}

  108. A:比较两个字符串的长度是否相等; B:将字符串s2连接到s1之后; C:找出字符串s1和s2中共有的字符; D:找出在字符串s1中而不在s2中的所有字符;
  109. 假定等级和分数有以下对应关系: 等级:A 分数:85~100 等级:B 分数:60~84 等级:C 分数:60 以下对于等级grade输出相应的分数区间,能够完成该功能的程序段是( )。假定等级和分数有以下对应关系:等级:A 分数:85~100 等级:B 分数:60~84 等级:C 分数:60 以下对于等级grade输出相应的分数区间,能够完成该功能的程序段是( )。

  110. A:switch (grade)
    {
    case 'A':printf("85--100\n");break;
    case 'B':printf("60--84\n");break;
    case 'C':printf("60以下 \n");break;
    default:printf("等
    级错误!\n");
    }
    B:switch (grade)
    {
    case 'A':printf("85--100\n");
    case 'B':printf("60--84\n");
    case 'C':printf("60以下\n");
    default:printf("等
    级错误!\n");
    }
    C:switch (grade)
    {
    case 'A':printf("85--100\n");break;
    case 'B':printf("60--84\n");break;
    case 'C':printf("60以下\n");
    default:printf("等级错误!\n");
    }
    D:switch (grade)
    {
    case 'A':printf("85--100\n");break;
    case 'B':printf("60--84\n");
    case 'C':printf("60以下\n");
    default:printf(" 等级错误!\n");
    }
  111. 一个C语言程序是由    。

  112. A:若干过程组成 B:若干子程序组成 C:函数组成 D:一个主程序和若干子程序组成
  113. 下面程序段是输出两个字符串中对应字符相等的字符。请选择填空。 char x[]=“programming”; char y[]=“Fortran”; int i=0; while(x[i]!=‘\0’&&y[i]!= ‘\0’) { if(x[i]==y[i]) printf(“%c”, ); else i++; }

  114. A:x[i] B:y[i] C:x[i++] D:y[++i]
  115. #include int main(){ static char a[]=”Language”,b[]=”programe”; char *p1,*p2; int k; p1=a; p2=b; for(k=0;k<=7;k++) if(*(p1+k)==*(p2+k)) printf(“%c”,*(p1+k));return 0; }下面程序的运行结果是______________。

  116. A:Language B:有语法错 C:gae D:ga
  117. 表达式!x||a==b 等效于 。

  118. A:(!x)||(a==b) B:!((x||a)==b) C:!(x||(a==b)) D:!(x||y)==b
  119. 设变量i是int类型,f是float型,d是double型,执行表达式5+’i’-f*d,其结果的数据类型为 。

  120. A:float型 B:double型 C:非法表达式 D:int型

温馨提示支付 ¥5.00 元后可查看付费内容,请先翻页预览!
点赞(3) dxwkbang
返回
顶部