当前位置:首页 > C语言程序设计练习题 - 2012
C语言程序设计练习题
一、单项选择题
1. 载VC环境中,源程序文件的扩展名为( )。
A. *.txt B. *.cpp C. *.obj D. *.exe 2. 下列说法错误的是( )。
A. 主函数可以分为两个部分:函数首部和函数体 B. 主函数可以调用任何非主函数的其他函数 C. 任何非主函数可以调用其他任何非主函数 D. 程序可以从任何非主函数开始执行 3. 以下叙述正确的是( )。 A. C语言中每一行只能写一个语句
B. C语言中没有输入输出语句,数据的输入输出使用函数完成 C. C语言源程序经过编译就可以生成EXE文件 D. C语言中的每一条语句以换行符作为结束标志
4. 设变量a是整型,f是浮点型,则表达式'a'+f值的数据类型为( )。 A. int B. float C. char D. 不确定 5. 若有定义“int a;”,变量a在内存中占4个字节,则unsigned int a的取值范围为(A. 0~32767 B. 0~2147483647 C. 0~4294967295 D. 0~65535 6. 下列选项中不是C语言提供的合法保留字的是( )。
A. switch B. cher C. case D. default 7. 设“int a=2,b;”,则计算表达式“b=a&&1”后b的值是( )。 A. 0 B. 1 C. 2 D. 3 8. 在C语言中,合法的字符常量是( )。
A. '奥运北京' B. \奥运北京\9. char型常量在内存中存放的是( )。
A. ASCII码值 B. BCD码值 C. 内码值 D. 十进制代码值 10. 有如下程序,输入数据“12 345
int x; float y;
scanf(\}
A. 12.000000 B. 345.000000 C. 12345.000000 D. 0.000000 11. 在C语言中,下列说法中正确的是( )。 A. 不能使用“do 语句 while(条件)”实现循环
B. “do 语句 while(条件)”的循环必须使用“break”语句退出循环 C. “do 语句 while(条件)”的循环中,当条件为非0时将结束循环 D. “do 语句 while(条件)”的循环中,当条件为0时将结束循环
12. C语言程序的3种基本结构是( )结构、选择结构和循环结构。 A. 顺序 B. 递归 C. 转移 D. 嵌套 13. 若有定义“int x, y;”,则下面选项中合法的if语句是( )。
1
。 ) A. if(a==b) x++; B. if(a=b) x++; D. if(a=>b) x++; 14. 下面程序段
int k=2;
while(k=0){printf(\则下面描述中正确的是( )。
A. while循环执行两次 B. 循环式无限循环 C. 循环体语句一次也不执行 D. 循环体语句执行一次 15. 从循环体内某一层跳出,继续执行循环体外的语句是:( )。 A. break语句 B. return语句 C. continue语句 D. 空语句 16. 表达式“9!=7”的值是( )。
A. ture B. 非0值 C. 0 D. 1 17. 下面for语句的循环次数是( )。
int i, x;
for(i=0, x=0; i<=9&&x!=876; i++)
scanf(\
A. 最多循环10次 B. 最多循环9次 C. 无限循环 D. 一次也不循环 18. 下列选项中合法的数组定义是( )。
A. int s[ ] = {\C. char a = {\19. 下列选项中对二维数组不正确的初始化是( )。
A. int a[ ][3] = {3, 2, 1, 1, 2, 3}; B. int a[ ][3] = {{3, 2, 1}, {1, 2, 3}}; C. int a[2][3] = {{3, 2, 1}, {1, 2, 3}}; D. int a[ ][ ] = {{3, 2, 1}, {1, 2, 3}}; 20. 若有如下定义“int a[ ][3] = {1, 2, 3, 4, 5, 6};”,则a[1][0]的值是( )。 A. 4 B. 1 C. 2 D. 5
21. 若有定义语句“int a[10];”,则对数组a元素的正确引用是( )。 A. a[10] B. a[3.5] C. a(5) D. a[10-10] 22. 有以下程序
#include \#include \void main( ) {
char *p[10]={\printf(\}
执行后输出结果是( )。
A. 2 B. 3 C. 4 D. 5 23. 有以下程序
#include \void main( ) {
int p[7]={11,13,14,15,16,17,18}, i=0, k=0; while(i<7&&p[i]%2)
{k=k+p[i]; i++;} printf(\
2
}
执行后输出结果是( )。
A. 58 B. 56 C. 45 D. 24 24. 若有下面的变量定义,以下语句中合法的是( )。
int i, a[10], *p;
A. p=a+2; B. p=a[5]; C. p=a[2]+2; D. p=&(i+2); 25. C语言规定函数的返回值的类型由( )。 A. return语句中的表达式类型所决定 B. 调用该函数时的主调用函数类型所决定 C. 调用该函数时系统临时决定
D. 在定义该函数时所指定的函数类型所决定
26. 以下所列的各函数首部中,正确的是( )
A. void play(var :integer,var b:integer) B. void play(int a,b)
C. void play(int a,int b) D. Sub play(a as integer,b as integer) 27. 以下说法中正确的是( )。
A. C语言程序总是从第一个定义的函数开始执行
B. 在C语言程序中,要调用的函数必须在void main( )函数中定义 C. C语言程序总是从void main( )函数开始执行
D. C语言程序中的main( )函数必须放在程序的开始部分 28. 若程序中定义了以下函数
double myadd(double a, double b)
{return(a+b);}
并将其放在调用语句之后,则在调用之前应该对该函数进行声明,以下选项中错误的声明是( )。 A. double myadd(double a, b) B. double myadd(double, double)
C. double myadd(double b, double a) D. double myadd(double x, double y) 29. 在C语言中,下面说法中正确的是( )。 A. 函数定义可以嵌套,但函数调用不能嵌套 B. 函数定义不可以嵌套,但函数调用可以嵌套 C. 函数定义和调用均不能嵌套 D. 函数定义和调用均可以嵌套
30. 一个程序由若干文件组成,共用同一变量,则此变量的存储类别是( )。 A. auto B. extern C. static D. register
31. 在VC++编译环境的编译信息窗口出现提示信息“example.obj - 0 error(s), 0 warning(s)”,表示这是( )的结果。
A. 编译 B. 编辑 C. 连接 D. 运行
32. 算法的表示形式多种多样,常见的有自然语言、程序流程图、伪代码描述和( )。 A. 框图 B. N-S图 C. 目标图 D. 结构图 33. 在C语言中,变量所分配的内存空间大小( )。 A. 均为一个字节 B. 由用户自己定义 C. 由变量的类型决定 D. 任意
34. 在C语言中,char型数据在内存中的存储形式是( )。 A. 补码 B. 反码 C. 原码 D. ASCII码 35. C语言的基本数据类型包括( )。
A. 整型、浮点型、逻辑型 B. 整型、浮点型、字符型、逻辑型
3
C. 整型、字符型、逻辑型 D. 整型、浮点型、字符型
36. 在C语言中,要求运算的量必须是整型的运算符是( )。 A. * B. / C. ++ D. % 37. 语句“for(i=-1;i<4;i++);”的循环体将执行( )次。
A. 3 B. 4 C. 5 D. 6 38. 语句“for(s=2; ;s++);”可以理解为( )。
A. for(s=2;0;s++); B. for(s=2;1;s++); C. for(s=2;s<2;s++); D. for(s=2;s>2;s++); 39. C语言对嵌套if语句的规定是:else总是与( )。 A. 之前最近的if配对 B. 第一个if配对
C. 缩进位置相同的if配对 D. 之前最近的且尚未配对的if配对 40. 语句“while(!E);”括号中的表达式!E等价于( )。 A. E==0 B. E!=1 C. E!=0 D. E==1
41. C语言中的标识符只能由字母、数字、下划线3种字符构成,且第一个字符( )。 A. 必须是字母或下划线 B. 必须是下划线 C. 可以是字母、数字、下划线中的任意字符 D. 必须是字母 42. 表达式“a=(a=6,a*6,a+3)”计算后,a的值是( )。 A. 39 B. 36 C. 6 D. 9 43. 下列数据中属于字符串常量的是( )。
A. ABC B. \ C. 'abc' D. 'a' 44. 字符串\的长度是( )。
A. 11 B. 7 C. 5 D. 3 45. 假设int类型变量占用4字节,且有语句“int x[10]={0,2,4};”,则数组x在内存中所占字节数是( )。
A. 3 B. 12 C. 4 D. 40 46. 以下数组定义中不正确的是( )。
A. int a[2][3]; B. int b[][3]={0,1,2,3};
C. int c[100][100]; D. int d[3][]={{1,2},{1,2,3},{1,2,3,4}}; 47. 有以下定义,其中不能给数组a输入字符串语句的是( )。 #include
A. gets(a); B. gets(a[0]); C. gets(&a[0]); D. gets(b); 48. 以下程序段中错误的是( )。
A. char s[10]=\ B. char t[]=\
C. char s[10];s=\ D. char s[10];strcpy(s,\49. 以下程序段的输出结果是( )。 char s[12]=\ printf(\
A. a book! B. a bo
C. book! D. 因格式描述不正确,无输出 50. 有定义“char s[12]={\”,则“printf(\”的输出结果是( )。 A. 6 B. 7 C. 11 D. 12 51. 有定义“int a[2][3];”,则该二维数组的元素个数是( )。
4
共分享92篇相关文档