【2017年整理】C语言程序设计自测练习
PAGE
PAGE 1
《C语言程序设计》自测练习
一、选择题
1. 由C语言源程序文件编译而成的目标文件的缺省扩展名为( )。
A. cpp B. exe C. obj D. C
2. C语言程序的基本模块为( )。
A. 表达式 B. 标识符 C. 语句 D. 函数
3. x>0 || y==5的相反表达式为( )。
A. x<=0 || y!=5 B. x<=0 && y!=5
C. x>0 || y!=5 D. x>0 && y==5
4. 枚举类型中的每个枚举常量的值都是一个( )。
A. 整数 B. 浮点数
C. 字符 D. 逻辑值
5. 循环语句“for(int i=0; i
A. 1 B. n-1 C. n D. n+1
6. 在下面的while循环语句中,其循环体被执行的次数为( )。
int i=0,s=0; while(s<20) {i++; s+=i;}
A. 4 B. 5 C. 6 D. 7
7. 若定义了函数 double *function(), 则返回值类型为( )。
A. 实数型 B. 实数指针型 C. 函数指针型 D. 数组型
8. 若用数组名作为函数调用的实参,传递给形参的是( )。
A. 数组的首地址 B. 数组中第一个元素的值
C. 数组中全部元素的值 D. 数组元素的个数
9. 假定a为一个整型数组名,则元素a[4]的地址比该数组的首地址大( )个字节。
A. 4 B. 8 C. 16 D. 32
10. 下列给字符数组赋初值时,正确的是( )。
A. char s1[]="abcdef"; B. char s2[4]="abcd";
C. char s3[2][3]={"abc","xyz"}; D. char s4[4][]={'a','x','s','t'};
11. 要使p指向二维整型数组a[10][20],p应定义为( )。
A. int *p=a; B. int **p=a; C. int *p[20]=a; D. int(*p)[20]=a;
12. 标准输入设备的文件流标识符是( )。
A. stdin B. stdout C. stderr D. stdio
13. 若要以读/写操作方式打开一个二进制文件,当文件不存在时返回打开失败信息,则选用的打开方式字符串为( )。
A. "r+" B. "ab+" C. "rb+" D. "wb+"
二、填空题
1. 单行或多行注释的开始标记符为__________。
2. 使用#include命令可以包含一个头文件,也可以包含一个______文件。
3. 执行“printf("%s%s%d","wei","rong",18);”语句后得到的输出结果为________。
4.执行“printf("%c",'A'+2);”语句后得到的输出结果为________。
5.short类型的大小为________个字节。
6. 十进制数3.26f的类型为________。
7. 假定y=10,则表达式++y*3的值为________。
8. 关系表达式(x==0)的等价表达式为________。
9.若x=5,y=10,则x!=y的逻辑值为________。
10. 在if语句中,每个else关键字与它前面同层次并且最接近的________关键字相配套。
11. 当在程序中执行到________语句时,将结束所在循环语句中循环体的一次执行。
12. 假定二维数组的定义为“char a[M][N];”,则该数组所占存储空间的字节数为________。
13