2022年C语言上机考试试题 .pdf
《2022年C语言上机考试试题 .pdf》由会员分享,可在线阅读,更多相关《2022年C语言上机考试试题 .pdf(8页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、1 C 语言上机考试试卷-1 一、选择题(评分标准20 分,每小题 2 分)1.C 语言规定:在一个源程序中,main 函数的位置。(A)必须在最开始处(B)必须在系统调用的库函数的后面(C)可以在任意位置(D)必须在最后2.在 C 语言中,int、char 和 short 三种类型数据在内存中所占的字节数。(A)由用户自己定义(B)都是 2 个字节(C)是任意的(D)由所用的计算机的字长决定3.假设所有的变量都是int 型,则表达式(a=2,b=5,b+,a+b)的值是。(A)7(B)8(C)6(D)2 4.判断 char 型变量ch 中的字符是否为小写字母的正确表达式是。(A),a?=ch
2、=?z?(B)(,a?=ch)&(ch=?z?)(C)(a=ch)&(ch=z)(D)(,a?=ch)AND(ch=z?)5.C 语言中while 和 do-while 循环的主要区别是。(A)while 的循环体可能一次也不执行(B)while 的循环控制条件比do-while 的严格(C)do-while 允许从该语句的外部跳转到循环体内(D)do-while的循环体不能是复合语句6.若有说明int a34,则对a 数组元素的正确引用是。(A)a24(B)a1,3(C)a(2)(1)(D)a13 7.下面程序中有错误的行是。(每行最前面的数字代表行号)1main()2 int a3=1,2
3、;3int j;4a2=5;5for(j=0,j3,j+)6a0=a0+aj;7printf(“a0=%dn”,a0);8(A)3(B)5(C)7(D)6 8.对以下语句的正确理解是。int a10=5,6,7,8,9,10;(A)将 6 个初值依次赋给a1 到 a6(B)将 6 个初值依次赋给a0 到 a5(C)将 6 个初值依次赋给a5 到 a10(D)因为数组长度与初值个数不同,所以此语句不正确9.有两个字符数组a、b,则以下正确的输入语句是。名师资料总结-精品资料欢迎下载-名师精心整理-第 1 页,共 8 页 -2(A)gets(a,b);(B)scanf(a,b);(C)scanf(
4、“%s%s”,&a,&b);(D)gets(a);gets(b);10.以下正确的函数定义是。(A)double fun(int x,int y)double z;z=x+y;return z;(B)fun(int x,y)int z;return z;(C)fun(x,y)int x,y;double z;z=x+y;return z;(D)double fun(int x,int y);double z;z=x+y;return z;套数号答案1 1.C 2.D 3.B 4.B 5.A6.D 7.B 8.B 9.D 10.A 二、判断题(评分标准20 分,每小题 2 分)1.C 语言规定可
5、以在程序中由用户指定任意一个函数作为主函数,程序将从此开始执行。2.程序执行的效率与数据的存储结构密切相关。3.若函数调用时的实参为变量时,同名的实参和形参占同一存储单元。4.long、int和 short类型数据占用内存大小,是根据数据的大小来决定所占内存的字节数。5.已有定义:char c;,程序前面已在命令行中包含ctype.h 文件,表达式,A?=c&c=,Z?能用于判断c 中的字符是否为大写字母。6.已 知 字 符,A?的ASC 代 码 值 是65,字 符 变 量 c1的 值 是,A?,c2 的 值 是,D?。执 行 语 句printf(%d,%d,c1,c2-2);后,输出结果是6
6、5,B。7.当用户要求输入的字符串中含有空格时,可以使用scanf()函数来输入。8.有以下函数int aaa(char*s)char*t=s;while(*t+);t-;return(t-s);aaa函数的功能是比较两个串的大小。9.在 C 程序中可以给指针变量赋一个整数作为地址值。10.若程序中有宏定义行:#define N 100,则以下叙述:“在编译程序对C 源程序进行预处理时用100替换标识符N”是正确的。套数号答案7 1.F 2.T 3.F 4.F 5.T 6.F 7.F 8.F 9.F 10.T 名师资料总结-精品资料欢迎下载-名师精心整理-第 2 页,共 8 页 -3 三、填空
7、题(4)(评分标准10 分,每小题 2 分)1.判断变量 a、b 是否绝对值相等而符号相反的逻辑表达式为_。2.变量 a、b 中必有且只有一个为0 的逻辑表达式为_。3.m 是值为两位数的整型变量,判断其个位数是奇数而十位数是偶数的逻辑表达式为_。4.求解赋值表达式a=5+(c=6)后,表达式值、a、c 的值依次为 _。5.求解赋值表达式a=(b=10)%(c=6),表达式值、a、b、c 的值依次为 _。参考答案:第 6 套(1)a=-b(2)a=0&b!=0|a!=0&b=0(3)m/10%2=0&m%2=1(4)11,11,6(5)4,4,10,6 四、程序改错题(评分标准20 分,每小题
8、5 分)1.下列程序中输入3214,则输出4,即得到输入数值的位数。#include void main()int n,k=0;scanf(%d,&n);while(n%10)k+;n=n-10;/*$1*/printf(%dn,k);操作说明:在考生目录的*子目录下,有*.c 文件,该文件中“/*$1*/”行中的语句n=n-10;有错误,请改正(注意:不得加行、减行、加句、减句,否则后果自负)。该程序功能:在程序中输入n 位整型数值,得到输入数值的位数。例如:在程序中输入3214,得到输入数值的位数4。答案:n=n/10;运行样例1 行运行样例1:3214 结果:4 2.以下程序输入数值6,
9、运行程序后输出结果2。#include void main()int i=0,t=1,n;while(scanf(%d,&n),n=0);while(!(t=n)名师资料总结-精品资料欢迎下载-名师精心整理-第 3 页,共 8 页 -4 t=t*2;i-;/*$1*/printf(%dn,i);操作说明:在考生目录的*子目录下,有*.c 文件,该文件中“/*$1*/”行中的语句i-;有错误,请改正(注意:不得加行、减行、加句、减句,否则后果自负)。该程序功能:运行程序后输入数值6,得输出结果2。答案:i+;运行样例1 行运行样例1:6 结果:2 3.输入 1 个正整数n。假设 n 为 5,下列
10、程序的输出结果为:sum=-0.216667#include void main()int k,flag=1,n;float s=0;scanf(%d,&n);for(k=1;kn;k+)s=s+(float)1.0*k/(k+1)*flag;flag=-1;/*$1*/printf(sum=%fn,s);操作说明:在考生目录的*子目录下,有*.c 文件,该文件中“/*$1*/”行中的语句flag=-1;有错误,请改正(注意:不得加行、减行、加句、减句,否则后果自负)。该程序功能:在程序中输入一个正数n 然后输出求和后的结果。例如:在程序中输入n 的值为 5,得到输出结果为:sum=-0.21
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年C语言上机考试试题 2022 语言 上机 考试 试题
限制150内