程序设计语言C_习题集(含答案)

阅读: 评论:0

《程序设计语言C》课程习题集
一、单选题
1. C语言中,合法的长整型常数是
A) OL        B) 4962710        C) 324562&        D) 216D
2. 以下有4用户标识符,其中合法的一组是
A) For    B) 4d    C) f2_G3    D) WORD
3. 以下选项中合法的字符常量是
A)"B"    B) '\010'    C) 68    D) D
4. 以下程序的输出结果
main()
{ int a=3;
printf("%d\n",a+a-=a*a) );
}
A) -6    B)12    C) 0    D) -12
5. abCdmn均为int型变量,且a=5b=6c=7d=8m=2n=2,则逻辑表达式(m=a>b)&&(n=c>d)运算后,n的值位为
A) 0    B) 1     C)2        D) 3
6. tint类型,进人下面的循环之前,t的值为0
while( t=l )
{ ……}
则以下叙述中正确的是
A) 循环控制表达式的值为0        B) 循环控制表达式的值为1
C) 循环控制表达式不合法        D) 以上说法都不对
7. 在调用函数时,如果实参是简单变量,它与对应形参之间的数据传递方式是
A) 地址传递                                B) 单向值传递
C) 由实参传给形参,再由形参传回实参        D) 传递方式由用户指定
8. 以下程序的输出结果是
main()
{ int i, a[10];
for(i=9;i>=0;i- -) a[i]=10-i;
printf("%d%d%d",a[2],a[5],a[8]);
}
A) 258    B) 741    C) 852    D) 369
9. 以下选项中,不能正确赋值的是
A) char s1[10];s1="Ctest";        B) char s2[]={'C', 't', 'e', 's', 't'};
C) char s3[20]="Ctest";              D) char *s4="Ctest\n";
10. 以下程序的输出结果是
union myun
{ struct
{ int x, y, z; } u;
int k;
} a;
main()
{ a.u.x=4; a.u.y=5; a.u.z=6;
a.k=0;
printf("%d\n",a.u.x);
}
A77se4    B) 5    C) 6    D) 0
11. 以下叙述正确的是 
A) C语言比其他语言高级 
B) C语言可以不用编译就能被计算机识别执行 
C) C语言以接近英语国家的自然语言和数学语言作为语言的表达形式 
D) C语言出现的最晚、具有其他语言的一切优点 
12. C语言中用于结构化程序设计的三种基本结构是
A) 顺序结构、选择结构、循环结构        B) ifswitchbreak
C) forwhiledo-while                D) ifforcontinue 
13. 下列关于C语言用户标识符的叙述中正确的是
A) 用户标识符中可以出现下划线和中划线(减号)
B) 用户标识符中不可以出现中划线,但可以出现下划线
C) 用户标识符中可以出现下划线,但不可以放在用户标识符的开头
D) 用户标识符中可以出现下划线和数字,它们都可以放在用户标识符的开头
14. 有以下程序段
int m=0,n=0; char c=a;
scanf("%d%c%d",&m,&c,&n);
printf("%d,%c,%d\n",m,c,n);
若从键盘上输入:10A10<回车>,则输出结果是:
A) 10,A,10    B) 10,a,10    C) 10,a,0    D) 10,A,0 
15. 有以下程序
main()
{ int i;
for(i=0;i<3;i++)
switch(i)
{ case 1: printf("%d",i);
  case 2: printf("%d",i);
  default: printf("%d",i);
}} 
执行后输出的结果是
A) 011122    B) 012    C) 012020    D) 120
16. 有以下程序
main()
{ int i=10,j=1;
printf("%d,%d\n",i--,++j);
}
执行后输出的结果是
A) 9,2    B) 10,2    C) 9,1    D) 10,1
17. 有以下程序
void f(int x,int y)
int t;
傅广生if(x<y){ t=x; x=y; y=t; }
}
main()
int a=4,b=3,c=5;
f(a,b); f(a,c); f(b,c);
printf("%d,%d,%d\n",a,b,c);
}
执行后输出的结果是
A) 3,4,5    B) 5,3,4    C) 5,4,3    D) 4,3,5
18. 有以下程序
main()
{ char *s[]={"one","two","three"},*p;
p=s[1];
printf("%c,%s\n",*(p+1),s[0]);
}
执行后输出结果是
A) n,two    B) t,one    C) w,one    D) o,two
19. 有以下程序
main()
int m[][3]={1,4,7,2,5,8,3,6,9};
int i,k=2;
for(i=0;i<3;i++)
printf("%d ",m[k][i]); }
}
执行后输出结果是
A) 4 5 6    B) 2 5 8    C) 3 6 9    D) 7 8 9
20. 设有如下说明
typedef struct
{ int n; char c; double x;}STD;
则以下选项中 ,能正确定义结构体数组并赋初值的语句是
A) STD tt[2]={{1,A,62},{2,B,75}};
B) STD tt[2]={1,"A",62,2,"",75};
C) struct tt[2]={{1,A},{2,B}};
D) struct tt[2]={{1,"A",62.5},{2,"B",75.0}};
21. 以下选项中属于C语言的数据类型是
A)复数型    B)布尔型    C)集合型    D)整型
22. 一个C程序的执行是从
Amain()函数开始,直到main()函数结束
B)第一个函数开始,直到最后一个函数结束
C)第一个语句开始,直到最后一个语句结束
Dmain()函数开始,直到最后一个函数结束
23. 设有语句int a=3;则执行语句a+=a-=a*a;后,变量a的值是
 A3    B)0    C)-12      D)9
24. 若有 char c[5]={'c','d','\0','e','\0'};则执行语句printf("%s",c);结果是
Acd\0e    B'c''d'    Ccd    Dcd e
25. 已知:int a[2][3]={1,2,3,4,5,6}, (*p)[3]=a;下列表达式不是4的是
A*(*p+3)    B*p+3    C*(*(p+0)+3)    Da[0][3]
26. 以下有宏替换不正确的叙述
A)宏替换不占用运行时间        B)宏名无类型
C)宏替换只是字符串替换    D)宏名必须用大写字母表示
27. 执行char str[10]=Ch\nina; strlen(str)的值是
A5    B6    C)7    D)9
28. 下面程序的输出结果是
 #define POWER(x) (x*x)
 main()
 {int i=4; printf("%d",POWER(i-2)); }
 A-9    B-7    C5    D-6
29. 在定义int a[3][4];后,第和时间赛跑教学设计10个元素是
Aa[2][4]    B)a[3][2]      C)a[3][3]    D)a[3][1]
30. 下面程序的输出结果是
 typedef struct
 {long x[2];
 short y[4];
 char z[8];
 }MYTYPE;
 MYTYPE a;
 main()
{ printf("%d\n",sizeof(a));}
 A)2    B)8    C)14    D)24
31. 以下能正确进行字符串赋值的是
A)char s[5]={a,e,神经皮肤黑变病I,o,u}        B)char s[5];s=good
C)char s[5]=abcd                            D)char s[5];s[]=good
32. 若有float x;则sizeof(x)sizeof(float)两种描述
A)都正确                    B)都不正确
C)前者正确,后者不正确        D)后者正确,前者不正确
33. 若有代数式3ae/bc),则不正确的C语言表达式是
A)3*a*e/b*c        B)3*a*e/b/c        C)a/b/c*e*3        D)a*e/c/b*3
34. 下面程序的运行结果是
Main( )
{struct cmplx{ int x;
              int y;
              }cnum[2]={1,3,2,7};
Printf(%d\n,cnum[0].y/cnum[0].x*cnum[1].x);
}
A)0        B)1        C)3        D)6
35. 若有以下说明和语句,且0<=i<10,则(  )是对数组元素的错误引用
int a[]={1,2,3,4,5,6,7,8,9,0},*p,i;
p=a;
A)*(a+i)    B)a[p-a]    C)p+i        D)*(&a[i])
36. 设有以下宏定义:
#define M 2
#define X(m)  ((M+2)*m)
则执行语句:z=2*(M+X(3+2));后,z的值为
A)44    B)45    C)32    D)33
37. 在如下程序段中的while循环
int k=0;
While(k=1)  k++;
A)有语法错,不能执行    B)无限循环        C)一次都不执行        D)执行一次
38. 下列程序运行的结果为碳酸铵
#include<stdio.h>
Main()
英德市卫生局{  int k=0;
  Char c=A;
  Do
{switch(c++)
  {  case A:k++;break;
      Case B:k- -;break;
      Case C:k+=2;break;
      Case D:k=k%2;break;
      Case E:k=k*10;break;
      Default:k=k/3;

本文发布于:2023-08-15 06:25:59,感谢您对本站的认可!

本文链接:https://patent.en369.cn/xueshu/361369.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:语言   用户   标识符   结果   结构   执行   循环   形参
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 369专利查询检索平台 豫ICP备2021025688号-20 网站地图