淮海工学院大一c语言期中试题,《C语言程序设计》期中考试试卷

《《C语言程序设计》期中考试试卷》由会员分享,可在线阅读,更多相关《《C语言程序设计》期中考试试卷(5页珍藏版)》请在人人文库网上搜索。

1、淮 海 工 学 院10 11 学年 第 2 学期 C语言程序设计 期中考试试卷题号一二三四五总分得分单项选择题答题表1234567891011121314151617181920一、单项选择题(共20题,每题1分,共20分,答案填写在单项选择题答题表中)1. 以下叙述中正确的是( )。A) C 程序的基本组成单位是语句B) C 程序中的每一行只能写一条语句C) 简单C 语句必须以分号结束D) C 语句必须在一行内写完在2. 一个C程序是由____________。A) 一个主程序和若干个子程序构成B) 一个或多个函数构成C) 若干过程组成D) 若干子程序组成3. 以下选项中正确的定义语句是__。

2、__________。A) double a; b;B) double a=b=7;C) double a=7, b=7;D) double, a, b;4. 计算机能直接执行的程序是( )。A) C源程序B) 目标程序C) 汇编程序D) 可执行程序5. 下列符号可以作为变量名的是____________。A) +aB) *pC) _DAYD) next day6. 设c是字符变量,则以下表达式正确的是____________。A) c=666B) c=cC) c=cD) c=abcd7. 以下说法正确的是____________。A) 输入项可以为一个实型常量,如scanf(%f, 3.5)。

3、B) 只有格式控制没有输入项也能进行正确输入,如scanf(%d)C) 当输入一个实型数据时,格式控制部分应规定小数点后的位数,如scanf(%4.2f, &f)D) 当输入数据时,必须指定变量的地址,如scanf(%f, &f)8. 若a, b, c均定义为整型,要给它们输入数据,正确的输入语句是____________。A) read(a, b, c);B) scanf(%d%d%d, a, b, c);C) scanf(%D%D%D, a, b, c);D) scanf(%d%d%d, &a, &b, &c);9. 若有if (w) x; else +y; 则其中与w 等价的表达式是__。

4、__________。A) w = l B) w = 0C) w != lD) w != 010. 为了避免嵌套的if-else语句的二义性,C语言规定else总是与____________组成配对关系。A) 缩排位置相同的ifB) 在其之前未配对的ifC) 在其之前最近的未配对的ifD) 同一行上的if11. 选择出合法的if语句(设int x, a, b, c;)____________。A) if(a = b) x+;B) if (a = b) x+;D) if (a=b) x+;12. 若变量已正确定义为int 型,要通过语句scanf(%d, %d, %d, &a, &b, &c);。

5、给a 赋值1、给b 赋值2、给c 赋值3,以下输入形式中错误的是(凵 代表一个空格符)( )。A) 凵凵凵1,2,3B) 1凵2凵3C) 1, 凵凵凵2, 凵凵凵3D) 1,2,313. C语言中while和do-while循环的主要区别是____________。A) do-while的循环体至少无条件执行一次B) while的循环控制条件比do-while的循环控制条件严格C) do-while允许从外部转到循环体内D) do-while的循环体不能是复合语句14. 以下关于数组的描述正确的是____________。A) 数组的大小是固定的,但可以有不同类型的数组元素B) 数组的大小是可。

6、变的,但所有数组元素的类型必须相同C) 数组的大小是固定的,所有数组元素的类型必须相同D) 数组的大小是可变的,可以有不同类型的数组元素15. 以下关于字符数组的描述中错误的是____________A) 字符数组可以存放字符串B) 字符数组中的字符串可以整体输入和输出C) 可以在赋值语句中通过赋值运算符=对字符数组整体赋值D) 不可以用关系运算符对字符数组中的字符串进行比较16. 若有定义语句:char s10=123n045670;,则strlen(s)的值是__________。A) 9B) 7C) 3D) 417. 在C语言程序中,下列叙述正确的是____________。A) 函数的。

7、定义可以嵌套,但函数的调用不可以嵌套B) 函数的定义不可以嵌套,但函数的调用可以嵌套C) 函数的定义和调用都可以嵌套D) 函数的定义和调用均不可以嵌套18. 以下叙述中错误的是________。A) 用户定义的函数中可以没有return 语句B) 用户定义的函数中可以有多个return 语句,以便可以调用一次返回多个函数值C) 用户定义的函数中若没有return 语句,则应当定义函数为void 类型D) 函数的return 语句中可以没有表达式19. 在声明一个结构体类型时系统分配给它的存储空间是____________。A) 该结构体变量中第一个成员所需存储空间B) 该结构体变量中最后一个成。

8、员所需存储空间C) 该结构体变量中所有成员所需存储空间的总和D) 结构体类型本身并不占用存储空间,即系统并不给结构体类型分配存储空间20. 已知函数调用f(1, k + 5, g(1,2,3),则函数f定义中的形参个数为_________个。A) 2B) 3C) 4D) 5二、填空题(共15空,每空1分,共15分)1. C编译器的功能是___*.c - *.obj_________。2. 表达式9 / 5 + 4的值是____5________。表达式3 * (4 + 5)的值是___27_________。3. 判断整型变量n是否是偶数的逻辑表达式是_n%2=0__________。4. 程。

9、序的三种基本控制结构分别是_顺序__、_分支__和_循环_。5. C语言中的循环控制语句有while、dowhile和___for_______语句三种。6. 计算数组的存储空间可以使用sizeof运算符,计算数组a的存储空间的表达式是__sizeof(a)__________。计算数组a的元素个数的表达式是____sizeof(a)/sizeof(a0)___。7. 在函数中可以利用__return_语句返回函数计算结果8. 若有定义int a = 1,2,3,4,5,6,则数组a的大小为____6___,引用数组a的最后一个元素的表达式是__a5_________。9. C语言使用关键字_。

10、_break___定义立即结束本次循环体的执行。10. 读取一行文本的字符串处理函数是_gets()/scanf(%s, )_。三、程序分析题(共5题,每题5分,共25分)1. 写出以下程序的运行结果(假定程序已包含正确的头文件)。#include main() int x=1,y=0;if(!x) y+;else if(x=0)if (x) y+=2;else y+=3;printf(%dn,y);y=02. 写出以下程序的运行结果(假定程序已包含正确的头文件)。main() int n = 1, fact = 1;while (n int fun()static int x=1;x*=2;。

11、return x;main()int i,s=1;for(i=1;ivoid main() int i, n, sum;printf(n = );scanf(%d, _&n___);/* 读取整数n */sum = __0___________;for(i = 1; i max__) max = bi; /* max #Include int isPrime(int n);int main(void)int n;int i;printf(Input n: );scanf(%d, &n);for(i=n+1; ;i+)if(isPrime(i) printf(%dn, i)break;retur。

12、n 0;int isPrime(int n)int i;for(i=2; Isqrt(n); i+)if (n%i=0)return 0;return 1;2. 编写一个名为min的函数计算三个整数a,b和c的最小值;然后编写main函数调用该函数计算大小为5的一维数组的最小值并输出。(本题12分)int min(int a, int b, int c);int main(void)int a5=;printf(The min one of the array is: %dn, min(min(a0, a1, a2), a3, a4);return 0;int min(int a, int b, int c)if (ab & ac)return a;if(ba & bc)return b;if (ca & cb)return c;int min(int a, int b, int c)if (ab & ac)return a;if(bc)return b;elsereturn c;int min(int a, int b, int c)int m;if (ab)m=a;elsem=b;If(mc)return m;elsereturn c。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值