77范文网 - 专业文章范例文档资料分享平台

c语言期末测试题(附答案)

来源:网络收集 时间:2022-01-05 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

课程代码:A100002 座位号:

《计算机技术基础(C语言)》试卷A

姓名: 学号: 专业: 学院: 班级: 20 年 月 日

题号 得分 一 二 三 四 五 六 七 总分 第一部分 一、单项选择对一题得 2 1、以下关于【 】。

选择题(共 30 分)

得分 评卷人 题(本大题共 15 小题,每题只有一个正确答案,答

分,共 30 分)

C

语言标识符的描述中,正确的是

A)标识符可以由汉字组成 B)标识符只能以字母开头 C)关键字可以作为用户标识符 D)Area与area是不同的标识符

2、使下列程序段输出“123,456,78”,键盘输入数据,正确的输入是【 】。 int i,j,k;

scanf(“%d,=%d”,&i,&j,&k); printf(“%d,%d,%d\n”,i,j,k);

3、判断char类型的变量c1是否为数字字符的正确表达式为 【 】。 A) (c1>=0)&&(c1<=9) B) (c1>=’0’)&&(c1<=’9’) C) ’0’<=c1<=’9’ D) (c1>=’0’)||(c1<=’9’)

4、若有语句int a=1,b=2,c=3;则以下值为0的表达式是 【 】。 A)’a’&&’b’ B)a<=b C)((a>b)||(b

5、已知:int a[2][3]; 则对数组元素的非法引用是 【 】 A. *(a[0]+2) B. a[1][3] C . a[1][0] D. *(*(a+1)+2)

6、在循环语句的循环体中执行break语句,其作用是 【 】。 A) 跳出该循环体,提前结束循环

B) 继续执行break语句之后的循环体各语句 C) 结束本次循环,进行下次循环 D) 终止程序运行

7、执行语句for(i=10;i>0;i--);后,变量i的值为 【 】。 A)10 B)9 C)0 D)1

8、若有int *p1, *p2,k; 不正确的语句是 【 】

A. p1=&k B. p2=p1 C. *p1=k+12 D. k=p1+p2

9、在函数中未指定存储类别的局部变量,其隐含的存储类别是 【 】

A. 静态(static)

C. 自动(auto)

 

B. 外部(extern)

D. 寄存器(register)

10、如下程序的输出结果是 【 】

main( )

{ int x=2,a=0,b=0; switch(x)

{ case 2: a++; b++; case 1: ++a; b--; break; case 0: b++;}

printf(

A. a=2, b=0 B. a=2, b=1 C. a=1, b=1 D. a=1, b=0

11、表示关系a main() {int x;

scanf(“%d”,&x); if(x<=3)?; else

if(x?!=10)printf(“%d\n”,x); }

程序运行时,输入的值在哪个范围才会有输出结果。 【 】 A.不等于10的整数 B.大于3且不等于10的整数 C.大于3或不等于10的整数 D.小于3的整数

13、break语句的正确用法是 【 】

??A. 无论在任何情况下,都中断程序的执行,退出到系统下一层。 B. 在多重循环中,只能退出最靠近的那一层循环语句。

??C. 跳出多重循环。 D. 只能修改控制变量。

14、若a, b, c, d均为整型变量,执行以下程序段后的t的值为 【 】

#define MAX(A,B) (A)<(B)?(A):(B) ................

a=5; b=3; c=3; d=4;

】 【t=MAX(a+b,c+d) *10;

A. 70 B. 7 C. 8 D. 80 15、执行以下程序段后, m的值为 【 】 int a[6]={1,2,3,4,5,6}, m, *p; p=&a[0];

m=(*p)*(*(p+2))*(*(p+4));

A) 15 B) 14 C) 13 D) 12

第二部分 非选择题(共 70

分)

二、判断题说法正确.答F

得分 评卷人 (本大题共 10 小题,每题1分,共 10 分,答T表示表示说法不正确,本题只需指出正确与错误,不需要修

改)

16. 字符型数据不可以进行加减运算。 【 】 17. 函数定义与函数的声明是一回事。 【 】 18.在C语言中函数能嵌套调用,也能嵌套定义。 【 】 19. 在C 语言中switch 语句必须使用break 语句。 【 】 20. for循环中的三个表达式都可以省略。 【 】 21. do-while循环是先进行循环体语句,后判断表达式。 【 】 22. 只能在main()函数中定义静态变量。 【 】 23. char *s1=“I love china”;定义了一个指针变量s1,它的初值为字符串“I love china”的首地址。 【 】

24. int *p[4];与int (*p)[4];的作用相同,都是定义了一个指向数组的指针。 【 】

25. 预处理命令行最后也是以分号(;)结尾的。 【 】 得分 三、填空题(本大题共 6 小题,每题 3 分,共 18 分。)

评卷人 26、在C语言中 * 作为单目运算符时表示____________,作为双目

运算符时表示__________,而作为一种标记时表示______________。

27、表达式(a=3*5,a*4),a+5中a的值是__________,整个表达式的值是 _________。

28、设有如下的类型说明:

int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a;

若数组所占内存单元的起始地址为446且整型数据占2个字节,则p+5=_______,*(p+5)=______。

29、若定义了如下的共用体类型变量x和结构类型变量y,则x和y所占用的内存字节数分别为_________和__________。

union stu1 struct stu2

{ int num; {int num;

char name[5]; char name[5];

char s; }x; char s; }y;

30、在TC中CTRL+F9的功能是__________、__________和_____________。 31、有以下程序 #include main()

{char c1,c2;

scanf(“%c”,&c1)?;

while(c1<65||c1>96) scanf(“%c”,&c1)?; c2=c1+32;

printf(“%c,%c”,c1,c2); }

程序运行输入65回车后,能否输出结果。(请回答能或不能)______。

四、简答题(本大题共 2 小题,每题 3 分,共 6 分。)

得分 评卷人 32、C语言中变量的存储类别有几种?局部变量的缺省存储类别是哪种。

33、请解释以下与一个C程序有关的3种文件(需要说明这些文件

是什么文件、如何形成的):(1) file.c (2) file.obj (3) file.exe 五、阅读程34、

评卷人 序回答问题(本大题共 4 小题,每题 5分,共 20 分)

#include

void main() { int a=10,b=18;

fun1(a,b); }

int fun1(int x,int y) { if(x>y)

printf(

else if(x

问题:(1)写出程序的运行结果;(2)分别列出形参和实参;(3)解释#include 。 35、int fun(int a) { int b=0;

static int c=3;

b=b+1; c=c+1;

return(a+b+c);} main( ) { int a=2, i;

for(i=0; i<3; i++)

printf(“%d”, fun(a)); }

问题:(1) 写出该程序的运行结果;(2) 如果将static int c=3; 语句改写成int

得分 c=3; ,则运行结果如何变化?为什么?

36、main( )

{ int a[2][3]={1,2,3,4,5,6}, b[3][2], i, j; printf(“array a:\n”); for(i=0;i<=1;i++) { for(j=0;j<=2;j++)

{printf(“]”, a[i][j]);

b[j][i]=a[i][j];} /*第七行*/ printf(“\n”);} printf(“array b:\n”); for(i=0;i<=2;i++)

{for(j=0;j<=1;j++)

printf(“]”, b[i][j]); printf(“\n”);} }

问题:(1) 写出程序的运行结果;(2)如果将第七行中的b[j][i]=a[i][j];语句改写成b[i][j]=a[i][j];,则结果如何变化。

37、#include void fun(int *p1, int *p2) { int t;

t=*p1; *p1=*p2; *p2=t; } void main() { int x,y; int *p1,*p2;

scanf( %d p1=&x; p2=&y; if(x>y) fun(p1,p2); printf( }

问题:(1) 该程序的功能是什么;(2) 程序中的 * 和 & 分别代表什么运算符?(3)若输入 5 3 ,则运行结果如何? 六、编写程38、输入两个N-S图,然后得分 得分 ) 评卷人 序(本大题共1小题,共 10 分。

正整数m和n,求其最大公约数和最小公倍数。(先画再编写程序代码)

) 评卷人 七、程序填空(本大题共1小题,共 6 分。

39、invert( )函数的功能是将一个字符串str的内容倒序存放。

例如:字符串str原内容为:abcde,函数调用后变为:edcba。 void invert(char str[])

{ int i,j,k;

j= ______________;

for (i=0;i

 

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库c语言期末测试题(附答案)在线全文阅读。

c语言期末测试题(附答案).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/1110258.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: