一、 判断题:
1.O C程序的基本组成单位是函数 2.O C程序可以由一个或多个函数组成
3.X C语言可以不用编译就能被计算机识别执行 4.X main()函数必须放在其它函数之前
5.O 每个C程序中都必须要有一个main()函数 6.X 在C程序中main()函数的位置是固定的
7.X C程序中的main()函数必须放在程序的开始位置。 8.X C语言编译时不检查语法
9.O C程序中注释部分可以出现在程序中任意合适的地方 10.O C程序中一行可以写多条语句
11.X 分号是C语句之间的分隔符,不是语句的一部分 12.X 花括号“{”和“}”只能作为函数体的定界符 13.X C程序中的每行只能写一条语句
14.X C程序的执行总是从main函数开始,在main函数结束
15.X C程序的执行总是从main函数开始,在程序的最后一个函数中结束 16.O ++(i+1);是非法的赋值语句
17.O 用户标识符中不可以出现中划线,但可以出现下划线
18.X 用户标识符中可以出现下划线,但不可以放在用户标识符的开头 19.O C语言中,Area与area是不同的标识符 20.X C语言中有逻辑类型
21.X int a=b=0;是正确的定义语句。
22.X 1.2E0.5是符合C语言语法的实型常量
23.X 假定x和y为double型,则表达式x=2,y=x+3/2的值是3.500000 24.X 可以用关系运算符对字符串的大小进行比较
25.X 两个字符串中的字符个数相同时才能进行字符串大小的比较 26.X 设有定义语句:char b= '\\123';则变量b包括4个字符
27.X 若有定义语句:char s[10]=\,则strlen(s)的值是9 28.X a=b+c=1 是正确的赋值表达式
29.O 若变量a、i已正确定义,且i已正确赋值,则 a=a++=5; 是正确的赋值语句( ) 30.O 除逗号运算符外,赋值运算符的优先级最低
31.O C语言中,运算对象必须是整型数据的运算符是 %。
32.X 对于单目运算符++、--,它们的运算对象可以是任何变量和常量 33.X 表达式:10!=9的值是 true 34.O 表达式1||2||3||4的值是1。
35.O 若变量c为char类型,则表达式(c>= 'a')&&(c<= 'z') 能正确判断出c为小写字母 36.X 若变量c为char类型,则表达式 'a'<=c<= 'z' 能正确判断出c为小写字母 37.O sizeof(float)的值是4
38.X sizeof(double)是一种函数调用
39.O if(x
41.O 用do-while语句构成的循环,在while后的表达式为零时结束循环 42.X do-while语句构成的循环只能用break语句退出
43.X 对for(表达式1; ; 表达式3)可理解为 for(表达式1;0;表达式3) 。 44.X break语句只能用于switch语句体中
45.X continue语句的作用是:使程序的执行流程跳出包含它的所有循环 46.X 在循环体内使用break语句和continue语句的作用相同
47.X 当程序执行中,数组元素的下标超出所定义的下标范围时,系统将给出“下标越界”的出错信息
48.X 假定int类型变量占用两个字节,其有定义:int x[10]={0,2,4};,则数组x在内存中所占字节数是6
49.X 若有定义:int a[2][3];对a数组元素正确引用的是a[2][3] 50.X 若有说明int s[3][4]={0};则只有元素s[0][0] 可得到初值0。
51.O 不能在赋值语句中通过赋值运算符\对字符型数组进行整体赋值 52.O 字符型数组中可以存放字符串
53.X 可以对整型数组进行整体输入、输出 54.X 函数中的形式参数是局部变量
55.O 在不同的函数中可以使用相同名字的变量
56.O 在一个函数内定义的变量只在本函数范围内有效 57.X 函数的定义和函数的调用均可以嵌套
58.X 函数的定义可以嵌套,但函数的调用不可以嵌套 59.O 函数的形参和实参分别占用不同的存储单元
60.X C语言中,每个函数都可以被其它函数调用(包括main函数) 61.X C语言中,在一个函数内部可以定义另一个函数 62.X 实参和与其对应的形参共同占用一个存储单元
63.X 只有当实参和与其对应的形参同名时才共占用存储单元 64.X 若有以下函数调用语句: fun(a+b,(x,y),fun(n+k,d,(a,B)));在此函数调用语句中实参的个数是6
65.O 用户定义的函数中可以没有return语句
66.X 用户定义的函数中可以有多个return语句,以便可以调用一次返回多个函数值 67.O 当调用函数时,实参是一个数组名,则向函数传送的是数组的首地址 68.X 若用数组名作为实参,则传递给形参的是数组中全部元素的值。 69.O C语言中形参的默认存储类别是自动(auto)。 70.O C语言中,宏替换没有数据类型限制 71.X C语言中,宏名必须用大写字母表示
72.X C程序对预处理命令行的处理是在程序执行的过程中进行的 73.X 两个字符串中的字符个数相同时才能进行字符串大小的比较
74.O 当调用函数时,实参是一个数组名,则向函数传送的是数组的首地址 75.X break语句只能用于switch语句体中
76.X C程序中的main()函数必须放在程序的开始位置。 77.O if(x>y); 是正确的if语句。 78.O ++(i+1);是非法的赋值语句 79.X 若有以下函数调用语句: fun(a+b,(x,y),fun(n+k,d,(a,B)));在此函数调用语句中实参的个数是6
80.O 函数的形参和实参分别占用不同的存储单元 81.O 在不同的函数中可以使用相同名字的变量 82.X 表达式:10!=9的值是 true
83.O C语言中,宏替换没有数据类型限制
84.O C程序中注释部分可以出现在程序中任意合适的地方 85.X 设有定义语句:char b= '\\123';则变量b包括4个字符
86.O 用do-while语句构成的循环,在while后的表达式为零时结束循环 87.O if(x 88.X continue语句的作用是:使程序的执行流程跳出包含它的所有循环 89.X 1.2E0.5是符合C语言语法的实型常量 90.X 若有定义语句:char s[10]=\,则strlen(s)的值是9 91.X 若变量c为char类型,则表达式 'a'<=c<= 'z' 能正确判断出c为小写字母 92.X 可以用关系运算符对字符串的大小进行比较 93.O 每个C程序中都必须要有一个main()函数 94.X 函数的定义和函数的调用均可以嵌套 95.O sizeof(float)的值是4 96.X C语言中有逻辑类型 97.O 字符型数组中可以存放字符串 98.X 分号是C语句之间的分隔符,不是语句的一部分 99.O C程序可以由一个或多个函数组成 100X. 若有说明int s[3][4]={0};则只有元素s[0][0] 可得到初值0。 101.X 用户定义的函数中可以有多个return语句,以便可以调用一次返回多个函数值 102.X C语言中,每个函数都可以被其它函数调用(包括main函数) 二、 单选题 1. 以下说法中正确的是( C ) A) C语言程序总是从第一个的函数开始执行 B) 在C语言程序中,要调用的函数必须在main()函数中定义 C) C语言程序总是从main()函数开始执行 D) C语言程序中的main()函数必须放在程序的开始部分 2. 下选项中不是C语句的是( A )。 A) {int i; i++; printf(“%d\\n”,i);} B) ; C) a=5,c=10 D) { ; } 3. 以下选项中不能作为C语言合法常量的是 ( ) A) 'cd' B) 0.1e+6 C) \D) '\\011' 4. 若x,a,b和c均是int型变量,则执行表达式x=(a=1,b=2)后x的结果为( B )。 A) 1 B) 2 C) 3 D) 不确定 5. 以下能正确定义整型变量a,b和c并为其赋初值1的语句是( D )。 A) int a=b=c=1; B) int a,b,c=1; C) a=b=c=1; D) int a=1,b=1,c=1; 6. 字符串\中的字符数(不算’\\0’)为( D ) A) 5 B) 14 C) 8 D) 4 7. 对两个静态函数A和B进行如下初始化: char A[]=\ char B[]={'A','B','C','D','E','F'}; 则下列叙述正确的是( D )。 A) A和B完全相同 B) A和B只是长度相等 C) A和B不相同,A是指针数组 D) A数组长度比B数组长 8. 若有以下定义: char a;int b; float c;double d; 则表达式a*b+d-c值的类型为( D ) A) float B) int C) char D) double 9. 在C语言中,运算对象必须是整型数的运算符是( A ) A) % B) / C) %和\\ D) ** 10. 有以下程序 main() { int x, y, z; x=y=1; z=x++,y++,++y; printf(\ } 程序运行后的输出结果是 ( C ) A) 2,3,3 B) 2,3,2 C) 2,3,1 D) 2,2,1 11. 以下选项中,当x为大于1的奇数时,值为0的表达式是( D ) A) x%2==1 B) x/2 C) x%2!=0 D) x%2==0 12. 以下程序的输出结果是( C )。 main() { int x=10,y=3; printf(\} A) 0 B) 1 C) 3 D) 不确定的值 13. 若a为int类型,且其值为3,则执行完表达式a+=a-=a*a后,a的值是( C ) A) -3 B) 9 C) -12 D) 6 14. 有以下程序 main() { char a='a',b; printf(\printf(\} 程序运行后的输出结果是 ( A ) A) b,b B) b,c C) a,b D) a,c 15. 设a、b、c、d、m、n均为int型变量,且a=5、b=6、c=7、d=8、m=2、n=2,则逻辑表达式(m=a>b)&&(n=c>d)运算后,n的值为( C ) A) 0 B) 1 C) 2 D) 3 16. 设x、y、t均为int型变量,则执行语句:x=y=3;t=++x||++y;后,y的值为( C ) A) 不定值 B) 4 C) 3 D) 1 17. 有以下程序段 int k=0 ; while(k=1)k++; while循环执行的次数是( A ) A) 无限次 B) 有语法错,不能执行 C) 一次也不执行 D) 执行1次 18. 能正确表示逻辑关系“a>=10或a<=0”的C语言表达式是( D ) A) a>=10 or a=10 B) a>=0|a<=10 C) a>=10&&a<=0 D) a>=10||a<=0 19. 表示关系x≤y≤z的c语言表达式为( A ) A) (x<=y)&&(y<=z) B) (x<=y)AND(y<=z) C) (x<=y<=z) D) (x<=y)&(y<=z) 20. 设有:int a=1, b=2, c=3, d=4, m=3, n=3; 执行 (m=a>b)||(n=c>d)后n的值为( A )。 A) 0 B) 1 C) 2