收藏 分销(赏)

C语言期末考试试卷附参考答案.pdf

上传人:w****g 文档编号:2492412 上传时间:2024-05-30 格式:PDF 页数:5 大小:158.75KB
下载 相关 举报
C语言期末考试试卷附参考答案.pdf_第1页
第1页 / 共5页
C语言期末考试试卷附参考答案.pdf_第2页
第2页 / 共5页
C语言期末考试试卷附参考答案.pdf_第3页
第3页 / 共5页
C语言期末考试试卷附参考答案.pdf_第4页
第4页 / 共5页
C语言期末考试试卷附参考答案.pdf_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
资源描述

1、 1/5一、一、单项选择题单项选择题(请将答案填在下面表格中 201).以下叙述中正确的是()。A.C 语言比其他语言高级B.C 语言可以不用编译就能被计算机识别执行C.C 语言以接近英语国家的自然语言和数学语言作为语言的表达形式D.C 语言出现的最晚,具有其他语言的一切优点.以下叙述中正确的是()。A.构成 C 程序的基本单位是函数B.可在一个函数中定义另一个函数C.main 函数必须放在其他函数之前D.所有被调用的函数一定要在调用之前进行定义.以下叙述中正确的是()。A.C 语言程序总是从第一个函数开始执行B.在 C 语言程序中,要调用函数必须在 main()函数中定义C.C 语言程序总是

2、从 main()函数开始执行D.C 语言程序中的 main()函数必须放在程序的开始部分.以下有关 for 循环的正确描述是()。A.for 循环只能用于循环次数已经确定的情况B.for 循环是先执行循环体语句,后判断表达式C.在 for 循环中,不能用 break 语句跳出循环体D.for 循环的循环体语句中,可以包含多条语句,但必须用花括号括起来.对下面程序段的描述,正确的是()。x=1;dox=x*x;while(!x);A.是死循环B.循环执行一次C.循环执行两次D.有语法错误6.以下有关 C 语言数组说法正确的是()。A.数组元素的数据类型可以不一致B.数组元素的个数可以不确定,允许

3、随机变动C.可以使用动态内存分配技术,定义元素个数可变的数组D.定义一个数组后,就确定了它所容纳的具有相同数据类型元素的个数7.以下数组定义正确的是()。A.int a(20);B.int a=1,2,5,7,0;C.int an;D.int a2=1,2,4,6;8.在定义 int b210;之后,对 b 数组元素引用正确的是()。A.b09B.b2,3C.b(1)(5)D.b10 09.如有定义语句 int c=1,5,3,4,6,7,0;,则数组 c 有()个元素。A.0B.不定C.6D.710.以下叙述中不正确的是()。A.字符数组中可以存放字符串B.可以对字符型数组进行整体输入、输出

4、C.可以对整型数组进行整体输入、输出D.不能通过“=”对字符型数组进行整体赋值11.已知 char d=”543210”;,则数组 d 的长度是()。A.5B.6C.7D.812.已知 char s3=”China”;,则下列程序段的输出结果是()。printf(“%d”,sizeof(s3);A.5B.6C.7D.813.已知 char s110,s2=”China”;则在程序中能将字符串”China”赋给数组 s1 的是()。2/5A.s1=“China”;B.strcpy(s1,s2);C.s1=s2;D.strcpy(s2,s1);14.将字符串中大写字母换成小写字母的函数是()。A.

5、strlwrB.struprC.stringD.strlen15.下列()排序方法中,执行一轮比较后,只交换一次数据。A.起泡法B.顺序比较法C.选择法D.插入法16.在 C 语言程序中,有关函数的定义正确的是()。A.函数定义不可以嵌套,但函数调用可以嵌套B.函数定义可以嵌套,但函数调用不可以嵌套C.函数定义和函数调用均不可以嵌套D.函数定义和函数调用均可以嵌套17.以下错误的说法是()。A.实参可以是常量、变量或表达式B.形参可以是常量、变量或表达式C.实参可以为任何类型D.形参应与其对应的实参类型一致18.以下错误的描述是:函数调用可以()。A.出现在执行语句中B.出现在一个表达式中C.

6、作为一个函数调用的实参D.作为一个函数的形参19.函数调用时,若形参和实参都是变量名,则正确的说法是()。A.形参不分配内存B.形参分配内存C.形参和实参占用相同的内存D.实参不分配内存20.以下函数值的类型是()。fun(float x)float y;y=3*x-4;return y;A.intB.floatC.voidD.不确定二、判断题二、判断题(正确的打,错误的打,101)1.一个循环体内又包含另一个完整的循环结构称为循环的嵌套。()2.break 语句能提前终止循环。()3.二维数组可被看作一种特殊的一维数组:它的元素又是一个一维数组。()4.对 9 个元素使用冒泡法排序时,需要排

7、 9 轮,第一轮需要比较 9 次。()5.strcat(字符数组 1,字符数组 2)的作用是将字符数组 2 接到字符数组 1 后面。()6.strcmp(“Beijing”,”Korea”)的函数值是一个正整数。()7.语言中,数组元素的下标是从 1 开始的,下标不能越界。()8.函数的形参在函数未调用时预分配了存储空间。()9.如函数值的类型和 return 语句中表达式的值不一致,则以函数类型为准。()10.调用函数时,实参是数组元素,则实现的是“值传递”。()三、填空题三、填空题(102)1.定义二维数组的一般形式为:,引用一维数组元素的形式为:。2.有一序列:21,-5,8,11,9,

8、0,34,4,-17,6 从小到大排序,用冒泡法经过二轮排序后,序列中 10 个数的顺序为:,若使用顺序比较法,经过三轮排 3/5序后,这 10 个数的顺序为:。3.调用字符串处理函数时,应在程序的开头添加预编译命令:#include,puts()函数将一个以 结束的字符序列(字符串)输出到终端4.C 语言中,函数分为系统提供的 和用户自定义函数两类,也可分为有参函数和 两类。5.函数的递归调用指在调用一个函数的过程中又 。6.函数值只能通过 语句返回主调函数。四、程序改错四、程序改错(求出两个非零正整数的最大公约数,并作为函数值返回。并作为函数值返回。在错误下面划横线,在右边写出正确内容,5

9、2)五、阅读程序写出运行结果五、阅读程序写出运行结果 (45)#includeint fun(int a,b)int r,t;if(ab)t=a;b=a;a=t;r=a%b;while(r!=0)a=b;b=r;r=a/b;return a;3.#include#includeint main()int i,j,n=0;for(i=5;i=5;i+)if(i%2!=0)n+;for(j=1;j=abs(i);j+)printf(“);for(j=1;j=11abs(i)*2;j+)printf(“%c“,64+n);printf(n);运行结果为:运行结果为:void main()int n1

10、,n2,a;printf(“please input n1,n2:n”);scanf(“%d%d”,&n1,&n2);a=fun(n1,n2);printf(最大公约数是:最大公约数是:%dn,a);1.#include int main()void fun(int x);fun(8);printf(n);void fun(int x)if(x/20)fun(x/2);printf(%d,x);运行结果为:运行结果为:2.#include void main()char s1=”This book”;char s2=”THIS hook”;int i;for(i=0;s1i!=0&s2i!=0

11、;i+)if(s1i!=s2i)printf(“%c”,s1i);运行结果为:运行结果为:4.#include int main()int i,j,x;int a10=12,3,14,5,26,97,38,9,0,2;for(i=0;i=0&xaj)aj+1=aj;j;aj+1=x;printf(排序后为:排序后为:n);for(i=0;i=9;i+)printf(“%5d”,ai);运行结果为:运行结果为:4/5六、程序填空题六、程序填空题(结果按序号填在下方对应横线上,102 分)_ _ _ _ _ _ _ _ _ 附:参考答案一、单项选择题单项选择题题 号12345678910答 案C

12、CA AC CD DB BD DB BA AD DC C题 号11121314151617181920答 案B BB BB BA AC CA AB BD DB BA A二、二、判断题判断题题 号12345678910答 案三、三、填空题填空题1.类型说明 数组名常量表达式常量表达式 数组名下标2.-5,8,9,0,11,4,-17,6,21,34 1、编程实现将十进制整数 n 转换成十六进制数输出。#includeint main()int n,a20,i=0,m=0;char hex16=0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F;printf(请输入整数请输入整数 n:

13、n);scanf(_,&n);while(n0)ai+=n%16;n=_;printf(转化为十六进制的数为:转化为十六进制的数为:);for(i=i1;_;i)/倒序输出倒序输出 m=ai;printf(_,hexm);printf(n);、编写判断是否为素数的函数,在主函数中输入一整数,输出是否为素数。#includeint psushu(_)int i;for(i=2;_;i+)if(m%i=0)return 0;return _;void main()int a,s;printf(请输入整数:请输入整数:n);scanf(“%d”,_);s=psushu(a);if(_)printf(

14、“%d 是素数是素数n”,a);else printf(%d 不是素数不是素数n,a);5/5-17,-5,0,21,11,9,34,8,4,63.string.h 04.库函数 无参函数5.直接或间接地调用该函数本身6.return四、程序改错五、阅读程序写出运行结果五、阅读程序写出运行结果1.12482.hisb3.4.-2 0 3 5 9 12 14 26 38 97六、程序填空题程序填空题_stdio.h_ _int m_”%d”_ _im 或 i=0_ _&a_ _%c_ _s 或 s=1_#includeint fun(int a,b)int r,t;if(ab)t=a;b=a;a=t;r=a%b;while(r!=0)a=b;b=r;r=a/b;return a;void main()int n1,n2,a;printf(“please input n1,n2:n”);scanf(“%d%d”,&n1,&n2);a=fun(n1,n2);printf(最大公约数是:最大公约数是:%dn,a);Int b a=b;b=ta%br 或或 b AAAA BBBBB BBBBBBB CCCCCCCCCCCCCCCCCCCC DDDDDDDDD DDDDDDDEEEEE EEE F

展开阅读全文
部分上传会员的收益排行 01、路***(¥15400+),02、曲****(¥15300+),
03、wei****016(¥13200+),04、大***流(¥12600+),
05、Fis****915(¥4200+),06、h****i(¥4100+),
07、Q**(¥3400+),08、自******点(¥2400+),
09、h*****x(¥1400+),10、c****e(¥1100+),
11、be*****ha(¥800+),12、13********8(¥800+)。
相似文档                                   自信AI助手自信AI助手
搜索标签

当前位置:首页 > 通信科技 > 开发语言

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服