第一篇:C语言程序设计考试题答案
1、已知int i, x[3][4];则不能将x[1][1]的值赋给变量i的语句是______(分数:2 分)
A.i=*(*(x+1))B.i=x[1][1] C.i=*(*(x+1))D.i=*(x[1]+1)标准答案是:A。
2、当c的值不为0时,在下列选项中能够将c的值赋给变量a、b的是______.(分数:2 分)
A.a=c=b;B.(a=c)&&(b=c);C.c=b=a;D.(a=c)||(b=c);标准答案是:B。
3、函数的功能是交换变量x和y中的值,且通过正确调用返回交换的结果。能正确执行此功能的函数是______。(分数:2 分)
A.fund(int *x, int *y){ *x=*x+*y;*y=*x-*y;*x=*x-*y;} B.funb(int x, int y){ int t;t=x;x=y;y=t;} C.funa(int *x, int *y){ int *p;*p=x;*x=*y;*y=*p;} D.func(int *x, int *y){ *x=*y;*y=*x;} 标准答案是:A。
4、若x=2,y=3则x||y的结果是______(分数:2 分)
A.0 B.3 C.1 D.2 标准答案是:C。
5、已知int a[10];则对a数组元素的正确引用是______(分数:2 分)
A.a[10] B.a[3.5] C.a[10] D.a(5)标准答案是:C。
二、多选
1、若定义:int a【2】【3】{0,2,4,6,8,10};以下描述正确的有______(分数:3 分)A.*(a+1)为元素6的地址 B.*(a【1】+1)的值为2 C.**(a+1)+2的值为8 D.a【0】与a的相同 标准答案是:ABCD。
2、在缓冲文件系统中用于读写的函数有______(分数:3 分)A.putchar()B.fread()C.rewind()D.purw()标准答案是:ABD。
3、指出下面合法的标识符______(分数:3 分)A.3ab B.ABC C.a_3 D._stu2 标准答案是:ABC。
4、指出下面哪些是合法的用户定义的标识符______(分数:3 分)A.P-S B._908 C.wind D.x y 标准答案是:BC。
6、这段程序中的常量有:#define PI 3.14;void main(){ int sum;sum = 10 + 15;printf(“sum=%dn”,sum);printf(“result is 25n”);}这段程序中常量有______(分数:3 分)A.10 B.sum C.15 D.PI 标准答案是:ACD。
1、说明语句int *(*p)();的含义是______(分数:2 分)
A.p是一个指向int型数组的指针 B..p是指针变量,它构成了指针数组
C.p是一个指向函数的指针,该函数的返回值是一个整型
D.p是一个指向函数的指针,该函数的返回值是一个指向整型的指针 标准答案是:D
2、已知int a, *p=&a;则下列函数调用中错误的是______(分数:2 分)
A.scanf(”%d”, &a);B.scanf(”%d”, p);C.printf(”%d”, a);D.printf(”%d”, p);标准答案是:D。
3、在C语言中,字符型数据在内存中的存储形式是______(分数:2 分)
A.原码 B.补码 C.反码 D.ASCII码 标准答案是:D。
4、已定义以下函数:fun(int *p){ return *p;}该函数的返回值是______(分数:2 分)
A.不确定的值
B.形参p所指存储单元中的值 C.形参p中存放的值 D.形参p的地址值 标准答案是:D。
5、()已知char b[5],*p=b;,则正确的赋值语句是(分数:2 分)A.b=“abcd”;B.*b=“abcd”;C.p=“abcd”;D.*p=“abcd”;标准答案是:C。
二、多选
1、如果要把常量327存入变量a中,a可以定义成哪些类型?______(分数:3 分)A.int B.char C.long D.float 标准答案是:ACD。
2、下面哪些写法是对的,而且是常量?______(分数:3 分)A.125 B.-0.456 C.1.25E+20 D.'AB' 标准答案是:AC。
3、指出下面错误的表达式______(分数:3 分)A.a+b=5 B.56=a11 C.i=i++ D.5.6+6.2%3.1 标准答案是:ABD。
4、若变量f已说明为float类型,i为int类型,则下面哪些表达式(或语句)能够实现将f中的数值保留小数点后两位,第三位进行四舍五入的运算?______(分数:3 分)A.f=(f*100+0.5)/100.0 B.i=f*100+0.5,f=i/100.0;C.f=(int)(f*100+0.5)/100.0;D.f=(f/100+0.5)*100.0;标准答案是:BC。
5、已知a为整型变量,那么与表达式a!=0真假值情况相同的表达式有哪些?______(分数:3 分)A.a>0||a<0 B.a C.!a==0 D.!a 标准答案是:ABC。
1、()若有以下定义:char s[20]= “programming”,*ps=s;则不能代表字符g的表达式是(分数:2 分)A.ps+3 B.s[3] C.ps[3] D.ps+=3,*ps 标准答案是:B。
2、()当对两个字符串进行比较时,应该使用的函数是(分数:2 分)A.strcat B.strcmp C.strcpy D.strlen 标准答案是:B。
3、()strlen 11.若i为整型变量,则以下循环的次数是for(i=2;i==0;)printf(“%d”,i--);(分数:2 分)A.无限次 B.0次 C.1次 D.2次
标准答案是:B。
4、()以下关于数组的描述正确的是(分数:2 分)A.数组大小固定,但是可以有不同类型的数组元素 B.数组大小可变,但是所有数组元素的类型必须相同 C.数组大小固定,所有元素的类型必须相同 D.数组大小可变,可以有不同类型的数组元素 标准答案是:C。
5、()以下能正确定义数组并正确赋初值的语句是(分数:2 分)A.int N=5,b[N][N];B.int a[1][2]={{1},{3}};C.int c[2][]= {{1,2},{3,4}};D.int d[3][2]={{1,2},{34}};标准答案是:D。
二、多选
1、程序的结构可分为哪几类______(分数:3 分)A.顺序结构 B.循环结构 C.程序结构 D.选择结构
标准答案是:ABD。
2、已知a为整型变量,那么与表达式a!=0真假值情况相同的表达式有哪些?______(分数:3 分)A.a>0||a<0 B.a C.!a==0 D.!a 标准答案是:ABC。
3、已知a为整型变量,那么与表达式a!=0真假值情况相同的表达式有哪些?______(分数:3 分)A.a B.!a==0 C.!a D.a>0||a<0 标准答案是:ABD。
4、指出下面错误的表达式______(分数:3 分)A.a=5,b=6,c=7 B.i=i++ C.5.6+6.2%3.1 D.56=a11 标准答案是:BD。
5、下面哪些写法是对的,而且是常量?______(分数:3 分)
A.125 B.2.5E+21 C.AB' D.n'123 标准答案是:BD。
1、()选择正确的输入语句()。:(其中:char string[20];)使得string的内容为“I am student”.数:2 分)
A.scanf(“%s”, string);B.scanf(“%c”, &string);C.scanf(“%s”, &string);D.gets(string);标准答案是:D。
2、()对以下说明语句 int a[10]={6,7,8,9,10};的正确理解是(分数:2 分)A.将5个初值依次赋给a[6]至a[10] B.将5个初值依次赋给a[0]至a[4] C.因为数组长度与初值的个数不相同,所以此语句不正确 D.将5个初值依次赋给a[1]至a[5] 标准答案是:B。
3、()以下标识符中可以作为用户函数名的是(分数:2 分)A.struct B.int C.union D.go_to 标准答案是:D。
4、源程序要正确地运行,必须要有什么函数?______(分数:2 分)A.printf函数 B.自定义的函数 C.main D.不需要函数 标准答案是:C。
5C语言程序由什么组成?______(分数:2 分)A.子程序
B.主程序和子程序
(分C.函数 D.过程
标准答案是:C。
二、多选
1、下面哪些是合法的用户定义的标识符______(分数:3 分)A._908 B.*par C.sheep!D.wind 标准答案是:AD。
2、下面合法的标识符______(分数:3 分)A.ABC B.a_3 C.sum.a D._stu2 标准答案是:ABD。
3、C语言的主要特点有哪些?______(分数:3 分)A.简洁、紧凑,使用方便、灵活,易于学习和应用。B.C语言是面向结构化程序设计的语言。
C.C语言允许直接对位、字节和地址进行操作。D.数据类型丰富。标准答案是:ABCD。
4、已定义c为字符型变量,则下列语句中错误的是______(分数:3 分)A.c='97' B.:c=“97” C.c=97;D.c=“a” 标准答案是:ABD。
5下列选项中是C语言合法标志符的有______(分数:3 分)A.good_morning B.main C.stdio.h D.8abc 标准答案是:AB。
1、一个C程序的执行是从______(分数:2 分)
A.本程序的main函数开始,到main函数结束
B.本程序文件的第一个函数开始,到本程序文件的最后一个函数结束 C.本程序的main函数开始,到本程序文件的最后一个函数结束 D.本程序文件的第一个函数开始,到本程序main函数结束 标准答案是:A。
2、以下叙述正确的是______(分数:2 分)
A.在C程序中,main函数必须位于程序的最前面 B.C程序的每行中只能写一条语句 C.C语言本身没有输入输出语句 D.在对一个C程序进行编译的过程中,可发现注释中的拼写错误 标准答案是:C。
3、以下叙述不正确的是。______(分数:2 分)
A.一个C源程序可由一个或多个函数组成 B.一个C源程序必须包含一个main函数 C.C程序的基本组成单位是函数
D.在C程序中,注释说明只能位于一条语句的后面 标准答案是:D。
4、语言规定:在一个源程序中,main函数的位置______(分数:2 分)
A.必须在最开始
B.必须在系统调用的库函数的后面 C.可以任意 D.必须在最后 标准答案是:C。
5、一个C语言程序是由______(分数:2 分)
A.一个主程序和若干子程序组成 B.函数组成 C.若干过程组成 D.若干子程序组成 标准答案是:B。
二、多选
1、指出下面合法的标识符:______(分数:3 分)A.3ab B.ABC C.a_3 D._stu2 标准答案是:BCD。
2、指出下面哪些是关键字:______(分数:3 分)A.char B.abc C.printf D.float 标准答案是:AD。
3、指出下面哪些是合法的用户定义的标识符?______ A.P-S B.put11 C.printf D.Int 标准答案是:BD。
4、C语言的基本类型哪些:______(分数:3 分)A.整型 B.枚举型 C.数组型 D.指针型 分)(分数:标准答案是:AB。
5这段程序中的常量有:(#define PI 3.14;void main(){ int sum;sum = 10 +15;printf(“sum=%dn”,sum);printf(“result is 25n”);}这段程序中常量有______(分数:3 分)A.10 B.15 C.25 D.PI 标准答案是:ABD。1、75的十六进制写法为___,八进制写法为______(分数:2 分)A.0x4b 0113 B.0165 117 C.61 0x3d D.0x4b 61 标准答案是:A。2、0x75的八进制写法为___,十进制写法为___。(分数:2 分)A.0165 117 B.0x4b 0113 C.61 0x3d D.0x4b 61 标准答案是:A。3、075的十进制写法为___,十六进制写法为___。(分数:2 分)A.0x4b 0113 B.0165 117 C.61 0x3d D.0x4b 61 标准答案是:C。
4、下面哪个表达式的值为4______(分数:2 分)A.(float)11/3 B.2016/11/3 星期四上午 12:00:00 C.11.0/3 D.(int)(11.0/3+0.5 标准答案是:D。
5已知整型变量a=6,b=7,c=1,则下面表达式的值为多少?a+3______(分数:2 分)A.9 B.2 C.1 D.65 标准答案是:A。
二、多选
1、C语言中整形常量按进制划分,有以下几种:______(分数:3 分)A.十六进制常量 B.十进制常量 C.八进制常量 D.二进制常 标准答案是:ABC。
2、如果要把常量327存入变量a中,a可以定义成哪些类型?______(分数:3 分)A.int B.char C.float D.long 标准答案是:ACD。
3、下面哪些写法是对的,而且是常量?______(分数:3 分)A.125 B.-0.456 C.56 D.452.2 标准答案是:AB。
4、指出下面错误的表达式:______(分数:3 分)A.56=a11 B.a+b=5 C.i=i++ D.5.6+6.2%3.1 标准答案是:ABD。
5若变量f已说明为float类型,i为int类型,则下面哪些表达式(或语句)能够实现将f中的数值保留小数点后两位,第三位进行四舍五入的运算?______(分数:3 分)A.f=(f*100+0.5)/100.0 B.i=f*100+0.5,f=i/100.0 C.f=(int)(f*100+0.5)/100.0 D.f=(f/100+0.5)*100.0 标准答案是:BC。
1、在C语言中,要求运算数必须是整型的运算符是_____(分数:2 分)
A./ B.++ C.!= D.% 标准答案是:D。
2、若有定义:int a=7;float x=2.5,y=4.7;则表达式x+a%3*(int)(x+y)%2/4的值是______(分数:2 分)A.2.500OO B.2.7500OO C.2.3600OO D.2.0OO 标准答案是:B。
3、设变量a是整型,f是实型,i是双精度型,则表达式10+'a'+i*f值的数据类型为______(分数:2 分)A.int B.float C.double D.不确定 标准答案是:C。
4、在C语言中, char型数据在内存中的存储形式是:______(分数:2 分)
A.补码 B.反码 C.原码 D.ASCII码 标准答案是:D。
5、若有以下说明语句:char s='092';则下面哪一项是正确的______(分数:2 分)
A.使s的值包含2个字符 B.说明语句不合法
C.使s的值包含6个字符 D.使s的值包含4个字符 标准答案是:B。
二、多选
1、下面哪些是非法的C语言转义字符?_______(分数:2 分)A.'t' B.' 8' C.' xaf' D.'' 标准答案是:BC。
2、请从下面的选项中选出正确的C语言的转义字符______(分数:2 分)A.''' B.'t' C.'n' D.'xaa' 标准答案是:ABCD。
3、以下符合C语言语法的赋值表达式是______(分数:2 分)A.d=9+e+f=d+9 B.d=9+e,f=d+9 C.d=9+e,e++,d+9 D.d=9+e++=d+7 标准答案是:BC。
4、sizeof(float)是______(分数:2 分)A.一个双精度型表达式 B.一个整型表达式 C.一种函数调用
D.一个不合法的表达式 标准答案是:AB。
5C程序的结构可分为哪几类?______(分数:2 分)A.顺序结构 B.循环结构 C.程序结构 D.选择结构 标准答案是:AB。
1、putchar函数可以向终端输出一个:______(分数:2 分)
A.整型变量表达式值 B.字符串 C.实型变量值 D.字符或字符型变 标准答案是:D。
2、printf函数中用到格式符%5s,其中数字5表示输出的字符串占用5列。如果字符串长度大于5,则输出按方式______(分数:2 分)A.从左起输出该字串,右补空格 B.按原字符长从左向右全部输出 C.右对齐输出该字串,左补空格 D.输出错误信息 标准答案是:B。
3、已知static int a[2][3]={2,4,6,8,10,12};正确表示数组元素地址的是______(分数:2 分)
A.*(a[1]+2)B.a[1]+3 C.*(a+1)D.a[0][0] 标准答案是:C
4、函数调用strcat(strcpy(str1, str2), str3)的功能是______(分数:2 分)
A.将串str1复制到串str2中,然后再连接到str3之后
B.将串str2复制到串str1中,然后再将串str3连接到串str1之后 C.将串str2复制到串str1中,再将串str1连接到str3之后 D.将串str1连接到串str2之后,再复制到str3之中 标准答案是:B。
5、已知int a[10];则对a数组元素的正确引用是______(分数:2 分)
A.a[10] B.a[3.5] C.a(5)D.a[10] 标准答案是:D。
二、多选
1、若a,b,c,d都是int型变量且初值为0,以下选项中正确的赋值语句是______(分数:3 分)
A.a=b=c=d=100 B.d++;C.c+b;D.d=(c=22)-(b++)标准答案是:ABD。
2、以下描述正确的是______(分数:3 分)
A.使用while和do-while循环时,循环变量初始话的操作应在循环体语句之前完成 B.while循环是先判断表达式,后执行循环语句
C.do-while和for循环均是先执行循环语句,后判断表达式 D.for,while和do-while循环中的循环体均可以由空语句构成 标准答案是:ABD。
3、以下4个选项中,可以看作是一条语句的有______(分数:3 分)A.{;} B.a=0,b=0,c=0;C.if(a>0)D.if(b==0)m=1;n=2;标准答案是:ABC。
4、以下叙述正确的是______(分数:3 分)A.C语言严格区分大小写英文字母 B.C语言用“;”作为语句分隔符
C.C程序书写格式自由,一行内可以写几个语句,一个语句也可以写在几行上 D.可以使用/*…*/对C程序中的任何部分作注释 标准答案是:ABCD。
5下列对逻辑运算符两侧的运算对象的数据类型描述不正确的是______(分数:3 分)A.只能是0或1 B.只能是0或非0正数 C.可以是整型或字符型数据 D.可以是任何类型的数据 标准答案是:ABD。
1、在C语言的if语句中,用作判断的表达式为______(分数:2 分)
A.关系表达式 B.逻辑表达式 C.算术表达式 D.任意表达式 标准答案是:D。
2、若希望当A的值为奇数时,表达式的值为“真”,A的值为偶数表达式的值为“假”。则以下不能满足要求的表达式是______(分数:2 分)A.A%2= =1 B.!(A%2 = =0)C.!(A%2)D.A%2 标准答案是:C。
3、已知char s[20]= ”programming”, *ps=s;则不能引用字母o的表达式是______(分数:2 分)A.ps+2 B.s[2] C.ps[2] D.ps+=2, *ps 标准答案是:A。
4、已知char b[5], *p=b;则正确的赋值语句是。______(分数:2 分)
A.b=”abcd” B.*b=”abcd”;C.p=”abcd”;D.*p=”abcd”;标准答案是:C。
5、已知int a[]={1,2,3,4,5,6,7,8,9,10,11,12}, *p=a;则值为3的表达式是______(分数:2 分)
A.p+=2, *(p++)B.p+=2, *++p C.p+=3, *p++ D.p+=2, ++*p 标准答案是:A。
二、多选
1、以下不符合C语言语法的实型常量是______(分数:3 分)A.1.2E0.5 B.3.14.159E C.0.005 D.E15 标准答案是:ABD。
2、以下叙述中正确的是______(分数:3 分)A.一个C源程序可由一个或多个函数组成 B.一个C源程序必须包含一个main()函数 C.C源程序的基本组成单位是函数
D.在C源程序中,注释说明只能位于一条语句的最后 标准答案是:ABD。
3、以下正确的if语句形式是______(分数:3 分)A.if(x>y && x!=y)B.if(x==y)x+=y C.if(x!=y)scanf(“%d”,&x)else scanf(“%d”,&y);D.if(x 4、以下选项中不是C语言合法整数的是______(分数:3 分)A.10110 B.386 C.0Xffa D.x2a2 标准答案是:BD。 5以下关于数组描述错误的是______(分数:3 分) A.数组的大小是固定的,但可以有不同的类型的数组元素 B.数组的大小是可变的,但所有数组元素的类型必须相同 C.数组的大小是固定的,所有数组元素的类型必须相同 D.数组的大小是可变的,可以有不同的类型的数组元素 标准答案是:ABD。 1、设有定义:int x=12,n=5;则表达式x%=(n%2)的值为______(分数:2 分) A.2 B.3 C.5 D.0 标准答案是:D。 2、针对下列程序段回答问题().for(t=1;t<=100;t++){scanf(“%d”,&x);if(x<0)______(分数:2 分) A.x>=0时什么也不输出 B.最多允许输出100个非负整数 C.printf函数永远也不执行 D.当x<0时整个循环结束 标准答案是:B。 3、已知char b[5],*p=b;,则正确的赋值语句是______(分数:2 分) A.b=“abcd”;B.*b=“abcd”;C.p=“abcd”;D.*p=“abcd”;标准答案是:C。 4、在C语言中,十进制数47可等价地表示为______(分数:2 分) A.2f B.02f C.57 D.57 标准答案是:D。 5、有两个整型变量dog和cat,若要从磁盘文件把数据读到其中,正确的形式是______(分数:2 分) A.fscanf(dog ,2,1,fp);B.fscanf(fp,“%d%d”,&dog ,&cat);C.fscanf(dog ,cat,2,1,fp);D.fscanf(fp,“%d”,&dog ,&cat);标准答案是:B。 二、多选 1、下面程序的功能是从键盘输入的一组字符中统计出大写字母的个数m和小写字母的个数n,并输出m、n中的较大者,请选择填空:#indude “stdio.h”main(){int m=0,n=0;char c;1;while((_____)!='n'){ if(c>='A' && C<='Z')m++ if(c>='a' && c<='z')n++;}printf(“%dn”, m A.c=getchar()B.getchar()C.c=getchar()D.scanf(“%c”,c)标准答案是:AC。 2、以下选项中,合法的字符常量是______(分数:3 分)A.'t' B.'17' C.“n” D.'xaa' 标准答案是:ABD。 3、以下用户标识符,其中合法的是______(分数:3 分)A.return B.f2_G3 C.A3-3 D.abc 标准答案是:BD。 4、以下可以定义为用户标识符的有______(分数:3 分)A.scanf B.short C._3com_ D.int 标准答案是:AC。 5以下选项中合法的表达式是______(分数:3 分)A.0<=x<100 B.i=j==0 C.(char)(65+3)D.x+1=x+1 标准答案是:ABC。简答题 1#include void main(){ int i=0,j=1;for(i=2;i<=10;i++){ j*=i;} printf(“%d”,j);return 0;} 21.定义文件指针 2.打开文件,判断是否成功打开,若打开失败,程序退出运行状态 3.对文件进行读写操作 4.关闭文件 名词解释 1条件语句 2条件语句否定分支(与 if 连用)论述题 1限制|调试 河南理工大学学期 《C语言程序设计》笔试试卷(B卷) 一、单项选择题(每题1分,共50分),在每小题列出的四个选项中只有一个选项是符合题目要求的,请在答案卡上将正确答案所对应选项的字母涂黑。 1.A2.B3.A4. D5. C6.D7.B8.D9.D10.B 11.B12.A13.B14.B15.D16.A17.C18.D19.C20.B 21.C22.A23.C24.C25.C26.A27.D28.A29.C30.A 31.C32.C33.C34.B35.A36.D37.B38.D39.D40.A 41.B42.B43.B44.C45.B46.C47.A48.B49.A50.C 二、填空题(每空2分,10个空,共20分)。 51.2652.353.154.‘ ’55.Pa是指向整型二维数组行的指针变量,每行有10个元素。56.#define57.递归58.;(分号)59.5.360.12 三、程序阅读试题(共10题,每题3分,共30分) 61.a10=1,c8=101,dc=b 62.852 k=4,y=0 63.m=82,j=7 64.下面程序的输出结果是____。 ABCD BCD CD D 65.YES 66.s=-13,count=2 67.123 68.1 2 3 6 7 9 69.The output is: 12876543910 67821543910 70.12 《C语言程序设计》试卷 第1页(共1页) 河南理工大学学期 《C语言程序设计》笔试试卷(A卷) 一、单项选择题(每题1分,共50分) 1.B2.A3.D4.A5.C6.C7.C8.C9.C10.A 11.B12.B13.D14.D15.D16.C17.C18.C19.D20.A 21.C22.C23.A24.C25.B26.A27.B28.C29.D30.A 31.B32.D33.A34.D35.C36.C37.C38.A39.A40.C 41.C42.C43.D44.C45.B46.C47.C48.B 二、填空题(每空2分,10个空,共20分)。 51.目标文件52.float53.354.共用体 56.ASCII值57.strcpy58.函数59.15 三、程序阅读试题(共10题,每题3分,共30分) 61.20,10 62.**0****2** 63.v1=4, v2=7, v3=5, v4=8 64.2870 65.21 66.3 67.*prt1= 7,*prt2=5 a=7,b=5 68.10,9,8,7,6,5,4,3,2,1,69.8,17 70.123,0 《C语言程序设计》答案第1页(共1页)49.B50.D55.060.# C语言考试题 一、单项选择题(每题2分,共40分) 1、一个算法应该具有“确定性”等五个特性,下面对另外4个特性的描述中错误的是(B) A、有零个或多个输入B、有零个或多个输出C、有穷性D、可行性 2、C语言中最简单的数据类型包括(B) A、整型、实型、逻辑型B、整型、实型、字符型 C、整型、字符型、逻辑型D、整型、实型、逻辑型、字符型 3、设a和b均为double型变量,且a=5.5、b=2.5,则表达式(int)a+b/b的值是(D) A、6.500000B、6 C、5.500000D、6.0000004、x、y、z被定义为int型变量,若从键盘给x、y、z输入数据,正确的输入语句是(B) A、INPUT x、y、z;B、scanf(“%d%d%d”,&x,&y,&z); C、scanf(“%d%d%d”,x,y,z);D、read(“%d%d%d”,&x,&y,&z); 5、设 intx=1, y=1;表达式(!x||y--)的值是(B)。 A、0B、1C、2D、- 16、对两个字符数组a和b进行初始化char a[]=“ABCDEF”;char b[ ]={'A','B','C','D','E','F'};则以下叙述正确的是(D)。 A、a与b数组完全相同B、a与b长度相同 C、a和b中都存放字符串D、a数组比b数组长度长 7、为了避免在嵌套的条件语句if――else中产生二义性,c语言规定:else子句总是与(B)配对。 A、缩排位置相同的ifB、其之前最近的ifC、其之后最近的ifD、同一行上的if8、下面不正确的字符串常量是(A) A、'abc'B、“12'12”C、“0”D、“" 9、以下错误的if语句是(C)。 A、if(x>y)z=x; B、if(x= =y)z=0; C、if(x!=y)printf(”%d“,x)else printf(”%d“,y); D、if(x 10、若有说明:inta[3][4];则对a数组元素的非法引用是(D)。 A、a[0][2*1]B、a[1][3]C、a[4-2][0]D、a[0][4] 11、程序char c[5]={‘a’,’b’,’ ’,’c’c,’ ’};printf(“%s”,c);}的运行结果是(D)。 A、'a''b'B、abC、ab cD、ab12、一个C程序的执行是从(A)。 A、本程序的main函数开始,到main函数结束 B、本程序文件的第一个函数开始,到本程序文件的最后一个函数结束 C、本程序的main函数开始,到本程序文件的最后一个函数结束 D、本程序文件的第一个函数开始,到本程序main函数结束 13、若变量已正确定义,以下非法的表达式是(B) A、a/=b+cB、a%(4.0)C、a=1/2*(x=y=20,x*3)D、a=b=c14、判断字符串a是否大于b,应当使用(D)。 A、if(a>b)B、if(strcmp(a,b))C、if(strcmp(b,a)>0)D、if(strcmp(a,b)>0) 15、以下关于运算符优先顺序的描述中正确的是(C)。 A、关系运算符<算术运算符<赋值运算符<逻辑与运算符 B、逻辑与运算符<关系运算符<算术运算符<赋值运算符 C、赋值运算符<逻辑与运算符<关系运算符<算术运算符 D、算术运算符<关系运算符<赋值运算符<逻辑与运算符 16、使用语句scanf(“a=%f,b=%d”,&a,&b);输入数据时,正确的数据输入是:(A) A、a=2.2,b=3B、a=2.2 b=3C、2.2 3D、2.2,317、表示关系12<=x<=y的C语言表达式为:(B) A、(12<=x)&(x<=y)B、(12<=x)&&(x<=y)C、(12<=x)|(x<=y)D、(12<=x)||(x<=y) 18、语句for(a=0,b=0;b!=100&&a<5;a++)scanf(“%d”,&b);scanf最多可执行次数为:(C) A、4B、6C、5D、119、设有如下定义:struct jan{int a;float b;}c2,*p;若有p=&c2;则对c2中的成员a的正确引用是:(B) A、(*p).c2.aB、(*p).aC、p->c2.aD、p.c2.a20、下列程序的输出结果是(C)。 main() { int a=7,b=5; printf(”%dn“,b=b/a); } A、5B、1C、0D、不确定值 二、填空题(每题2分,共30分) 1、一个C源程序中至少应包含一个main函数。 2、a是整型变量,则执行表达式a=25/3%3后a的值为。 23、C语言中的数组必须先定义,然后使用。 4、如果需要从被调用函数返回一个函数值,被调用函数必须包含return语句。 5、下面程序的运行结果是。 #include main() { int i,x,y; i=x=y=0; do {++i; if(i%2!=0){x=x+i;i++;} y=y+i++; } while(i<=7); printf(”x=%d,y=%dn“,x,y); } 运行结果是:x=1,y=206、引用C语言标准库函数,一般要用文件包含预处理命令将其头文件包含进来。 7、在C语言程序中,符号常量的定义要使用宏定义预处理命令。 8、逻辑运算符!是自右至左结合性。 9、在一个C源程序中,注释部分二侧的分界符为。/*和*/ 10、C语言标识符由字母、数字和下划线来构造。 11、若int x=5;while(x>0)printf(“%d”,x--);的循环执行次数为5。 12、若有说明和语句:int a=5,b=6,y=6;b-=a;y=a++则b和y的值分别是1、20。 13、C程序设计的三种基本结构是顺序结构、选择结构、循环结构。 14、数组是表示类型相同的数据,而结构体则是若干类型不同数据项的集合。 15、设x,y,z均为int型变量,请写出描述“x或y中有一个小于z”的表达式。x 三、判断题(每题1分 共10分) 1、C语言程序总是从main()函数开始执行。(T) 2、执行程序段int a=-1,b=4,k;k=(++a<0)&&!(b--<=0);printf(“%d %d %dn”,k,a,b);后的输出结果是004。(T) 3、C语言程序由函数组成,它的主函数必须在其它函数之前,函数内可以嵌套定义函数。(F) 4、用C语言实现的算法可以没有输出但必须要有输入。(F) 5、C语言本身有输入输出语句。(F) 6、若有int a[3][5]={2,2},{2,6},{2,6,2}},则数组a共有7个元素。(F) 7、int a=24;printf(”%o “, a);输出结果是30。(T) 8、C语言允许函数值类型缺省定义,此时该函数值隐含的类型是整形。(T) 9、在C语言中,字符串常量是用双引号括起来的一串字符。(T) 10、若有int a[5],*p=a;则p+2表示第2个元素的地址。(F) 四、编程题(每题5分,共20分) 1、计算并输出200-400之间不能被3整除的整数的和 #include void main() {int i,sum=0; for(i=200;i<=400;i++)if(i%3!=0)sum=sum+i;printf(”%dn“,sum); } 2、输入5个数,求和并输出。要求编写求和的函数。 #include void main() { int b(int x[],int n);int sum=0;int a[5]={1,2,3,4,5};sum=b(a,5); printf(”sum=%dn“,sum); } int b(int x[],int n) { int i,sum=0;for(i=0;i<5;i++)sum=sum+x[i]; return sum; } 3、输入3个学生4门课的成绩{(60,70,65,75),(75,80,75,90),(95,75,90,65)},计算每个 学生的总分和平均成绩并输出,结果保留一位小数 #include void main() {int a[3][4]={{60,70,65,75},{75,80,75,90},{95,75,90,65}};int i,j; float average,sum=0.0; printf(”三个学生的总分和平均成绩依次为:n“); for(i=0;i<3;i++){sum=0.0;} for(j=0;j<4;j++)sum=sum+a[i][j];average=sum/4;printf(”%.2f,%.2fn“,sum,average); } 4、起泡法(选择法)对十个数排序 #include void main() { } int i,j,t;int a[10];printf(”请输入10个数:n“);for(i=0;i<10;i++)scanf(”%d“,&a[i]);for(j=0;j<9;j++)for(i=0;i<9-j;i++)if(a[i]>a[i+1]){t=a[i];a[i]=a[i+1];a[i+1]=t;} for(i=0;i<10;i++)printf(”%d “,a[i]);printf(”n"); 一、选择题答案 1、B 2、C 3、D 4、B 5、B 6、A 7、B 8、C 9、B 10、D 11、C 12、B 13、C 14、D 15、B 二、填空题答案 1、n=%dn m=%dn 2、i=5;i>=1;--i 3、1.0/(i*i) 4、x avg/n 5、{2,10,4,6},{1,5,2,3},{2,4,7,8},{5,1,3,2} 三、阅读题1、3 2、67,D 3、x=6,y=14、123 5、s=54321 6、四、程序设计题答案 1、求两个整数中的较大者 #include 《C语言程序设计》考试试卷(A)参考答案 第1页 共2页 246 2、求一维数组a中所有元素的平均值。 例如,当一维数组a中的元素为:10,4,2,7,3,12,5,34,5,9 #include 共2页第二篇:《C语言程序设计》2011-2012-2B答案
第三篇:《C语言程序设计》2011-2012-2A答案
第四篇:C语言考试题及答案
第五篇:2018年 C语言程序设计A卷答案