c语言期末复习
2021-03-03
来源:意榕旅游网
判断题 1. (1 分) 每一个C语言程序都必须有一个main函数。 对 错 2. (1 分) C语言程序中,当出现条件分支语句if~else时, else与首行位置相同的if组成配对关系。 对 错 3. (1 分) C语言中while和do-while循环的主要区别是:do-while语句至少无条件执行一次。 对 错 4. (1 分) !(a||b)等价于!a&&!b。 对 错 5. (1 分) 建立函数的目的是为了提高程序的执行效率。 对 错 6. (1 分) int b[][3] = {1,2,3,4,5,6,7} ,表示数组b是3行3列的数组。 对 错 7. (1 分) 字符'\\0'是字符串的结束标记,其ASCII值为0。 对 错 8. (1 分) 如果在某fun函数,要修改主调函数中的某个变量的值,那么可以在fun函数中定义一个指针形参变量,通过指针变量间接引用主调函数的变量 对 错 9. (1 分) 对结构体变量不能进行整体输入输出。 对 错 10. (1 分) 在使用缓冲文件系统时,程序中的数据都先送于是到缓冲区。 对 错 选择题 1. (2分) C 语言程序的三种基本结构是顺序结构、选择结构和____结构。 A: 转移 B: 递归 C: 循环 D: 嵌套 C 2. (2分) 以下错误的if语句是___。 A: if(x==y) z=0; B: if(x ) z=x; C: if(x!=y) printf(\"%d\D: if(x > y) { x++;y--;} B 3. (2分) 语句for(a=0,b=0;b!=100&& a<5;a++) scanf(“%d”,&b);则 scanf最多可执行次数为_____。 A: 4 B: 5 C: 6 D: 1 B 4. (2分) 表达式(a=3, b=4,c=a+b)的值为:____。 A: 7 B: 3 C: 4 D: 不确定 A 5. (2分) 下列关于函数的说法,错误的是_____。 A: 如果被调函数的定义出现在主调函数之前,则可以省略函数声明。 B: 所有函数的定义都是相互独立的,不能在一个函数里定义另一个函数。 C: 调用库函数时,不需要对函数作声明。 D: 函数必须有形式参数 B 6. (2分) 以下数组定义中不正确的是________。 A: int a[2][3]; B: int b[][3]={0,1,2,3,4}; C: int c[10][10]={0}; D: int d[3][]={{1,2},{3,4},{5,6}}; B 7. (2分) 运行下面程序: #include
void main() { char *p=\"abcde\\0fghjHYik\\0\"; printf(\"%d\\n\} 则输出结果是________。 A: 12 B: 15 C: 6 D: 5 8. (2分) 若有语句:int i,j=7,*p=&i;,则与i=j;等价的语句是____。 A: i=*p; B: *p = *&j; C: i=&j; D: i=**p; B 9. (2分) 设有以下说明语句: struct ex { int x;float y;char z; }example; 则下面的叙述中不正确的是________。 A: struct是结构体类型的关键字 B: example是结构体类型名 C: x,y,z都是结构体成员名 D: struct ex是结构体类型 B 10. (2分) 把数据写入文件abc.txt,下列打开文件操作正确的是___。 A: fp=fopen(abc.txt,r); B: fp=fopen(abc.txt,w); C: fp=fopen(\"abc.txt\D: fp=fopen(\"abc.txt\ D 11. (2分) fread和fwrite函数常用来要求一次输入/输出________数据。 A: 一个整数 B: 一个实数 C: 一个字节 D: 一组 D 12. (2分) 要正确输入字符串\"hello world!”给一维数组s1,输入语句为_____。 A: gets(s1) B: scanf(“%c”,&s1) C: scanf(“%s”, s1) D: scanf(“%s”, &s1) C 13. (2分) 已知int *p,a;则语句\"p=&a;”中的运算符\"&\"的含义是_____。 A: 取指针内容 B: 逻辑与运算 C: 位与运算 D: 取变量地址 D 14. (2分) 下列关于文件的描述,正确的是______。 A: 对文件操作,根据读或写的操作来决定打开关闭文件的先后顺序 B: 对文件操作必须先关闭文件 C: 对文件操作,打开和关闭文件的顺序无关紧要 D: 对文件操作必须先打开文件 D 15. (2分) 设有以下语句,则____不是对a数组的正确引用,其中i值为0-5间的整数。Int a[10]={0,1,2,3,4},*p=a; A: *(*(a+1)) B: a[p-a] C: p[i] D: *(&a[i]))