C语言期末考试试卷及答案

上传人:pu****.1 文档编号:491649938 上传时间:2023-08-24 格式:DOC 页数:9 大小:47.51KB
返回 下载 相关 举报
C语言期末考试试卷及答案_第1页
第1页 / 共9页
C语言期末考试试卷及答案_第2页
第2页 / 共9页
C语言期末考试试卷及答案_第3页
第3页 / 共9页
C语言期末考试试卷及答案_第4页
第4页 / 共9页
C语言期末考试试卷及答案_第5页
第5页 / 共9页
点击查看更多>>
资源描述

《C语言期末考试试卷及答案》由会员分享,可在线阅读,更多相关《C语言期末考试试卷及答案(9页珍藏版)》请在金锄头文库上搜索。

1、一、 单项选择题 (本大题共20小题,每小题1分,共20分)1. 下列说法正确的是( )A. C程序可以从任何一个函数开始执行B. main函数可以被其它函数调用C. 一个C程序只能有一个main函数D. main函数中不能有形参2下列属于正确的标示符是( ) A. ?a B. a=2 C. a.3 D. a_33下列数据中属于“字符串常量”的是A. ABC B. “ABC” C. abc D. a4char型常量在内存中存放的是( ) A. ASCII代码 B. BCD代码 C. 内码 D. 十进制代码5设字符型变量a=3,b=6,计算表达式c=(ab)2后c的二进制值是( )A. 0001

2、1100 B.00000111 C. 00000001 D.000101006. 若有以下定义:char a;int b;float c; double d;则表达式a*b+d-c的值的类型为( ) A. float B. int C. char D. double7. 以下程序的输出结果是a=5,b=4,则输入数据的形式应该是( )#include “stdio.h”main() int a,b;scanf(%d,b=%d,&a,&b);printf(a=%d,b=%d,a,b);A 5 4 B 5,4 C 5 b=4 D 5,b=48. C语言中,while和dowhile循环的主要区别是

3、( )A.while的循环控制条件比dowhile的循环控制条件严格B.dowhile的循环体至少无条件执行一次C.dowhile允许从外部转到循环体内D. dowhile的循环体不能是复合语句9. 循环语句for(x=0,y=0;(y!=123)|(x4);x+); 的循环执行( ) A. 无限次 B. 不确定次数 C. 4次 D. 3次10在C语言中,设有数组定义 char array =China; 则array所占的空间为( )A.4个字节B.5个字节C. 6个字节D. 7个字节11.若变量已正确说明为int类型,要通过语句scanf(“%d %d %d”,&a,&b,&c);给a,b

4、,c分别赋值3,5,8,不正确的输入形式是( )A. 3 B. 3,5,85 8C. 3 D. 3 5 5 8 812.char *p=happy new year; char *q=p; int k; for( k=1;kdata.a D. p.data.a17. 有如下程序 (提示: 注意宏替换的规则)的#define N 2 的#define M N+1 的#define NUM 2*M+1 的#main() 的 int i; 的for(i=1;ib) max=a; else max=b8.设有定义如下:#define F(N) 2*N, 则表达式F(2+3)的值是_.9在C语言中,指针

5、运算符为_,取地址运算符_。10. 在C语言中,参数传递的两种形式是_和_三、程序分析题 (本大题共5小题,每小题5分,共25分)1若运行时输入:2,则以下程序的运行结果是_#include main() char class; printf(“Enter 1 for 1st class post or 2 for 2nd post:”); scanf(“%c”, &class); if (class=1) printf(“1st class postage is 19p”); else printf(“2nd class postage is 14p”);2以下程序的执行结果是_#inclu

6、devoid main()int num=0;while(num=2)num+;printf(%d ,num);3.以下程序的输出结果是_ #include main( ) int k=4, m=1, p; p=func(k,m); printf(%d,p); func(int a, int b) int m=0, i=2; i = i+m+1; m=i+a+b; return m;4.以下程序的执行结果是( )。 #include main( ) int a=5,6,7,8, i; func(a); for (i=0; i4; i+) printf(%d, ai); func(int *b)

7、 int j; for (j=0; j4; j+) bj=2*j; 5.设有程序myapp.c,代码如下:#include main(int argc,char *argv)while(-argc0) printf(“%s”,argvargc); printf(“t”);编译后形成myapp.exe,如果输入如下的命令: myapp aaa 333 bbb 444则输出结果是:_四、程序填充题 (本大题共5小题,每小题4分。共20分)1、根据以下嵌套if语句所给条件,填写switch语句,使它完成相同的功能。(假设mark的取值在1-100之间) if 语句如下:if (mark60) k=1;else if (mark70) k=2;else if (mark80) k=3;else if (mark90) k=4;else if (mark100) k=5;请填写下面经转换后的switch语句中的括号中的内容。switch ( ) _: k=1; break; case 6 : k=2; break; case 7 : k=3; break; case 8 : k=4; break; _: k=5; break;2. 将八个数输入到数组中,找出其中最大数和最小数并输出。main()int

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 习题/试题

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号