C语言考证真题A.docx
- 文档编号:27321228
- 上传时间:2023-06-29
- 格式:DOCX
- 页数:14
- 大小:20.51KB
C语言考证真题A.docx
《C语言考证真题A.docx》由会员分享,可在线阅读,更多相关《C语言考证真题A.docx(14页珍藏版)》请在冰豆网上搜索。
C语言考证真题A
A
题号
一
阅卷签名
总分
一、单选题(每小题1分,共30分):
得分
阅卷
1.用C语言编写的C程序称为()。
(A)源程序(B)目标程序(C)汇编程序(D)命令程序
2.C语言中表示“a和b都大于c”的表达式为()。
(A)a>c&&b>c(B)a>c||b>c(C)a>b||b>c(D)a>b&&b>c
3.以下正确的说法是()。
(A)定义函数时,形参的类型说明可以放在函数体内。
(B)return后边的值不能为表达式。
(C)如果函数值的类型与返回值类型不一致,以函数值类型为准。
(D)如果形参与实参类型不一致,以实参类型为准。
4.设有以下说明语句:
structexa
{
intx;
floaty;
}
z;
则下面的叙述不正确的是()。
(A)x和y都是结构体成员名。
(B)structexa是用户定义的结构体类型。
(C)struct是结构体类型的关键字。
(D)z是用户定义的结构体类型名。
5.下列程序的运行结果为()。
#include
intfun(intnum)
{
intk=1;
do
{
k*=num%10;num/=10;
}
while(num);
returnk;
}
voidmain()
{
intn=26;
printf("%d\n",fun(n));
}
(A)26(B)8(C)12(D)0
6.下列函数的功能是()。
floataverage(floatp[],intn)
{
floatsum=0,aver;
inti;
for(i=0;i sum+=p[i]; aver=sum/n; returnaver; } (A)求数组中前n个数的和。 (B)求数组中前n个数的平均值。 (C)求数组中后n个数的和。 (D)求数组中后n个数的平均值。 7.在赋数组的初值时,若给予的初值数目小于数组大小时,会发生什么情况()。 (A)编译器会产生错误信息。 (B)程序会不正常运作。 (C)没有赋初值的元素会被设为0。 (D)所有元素全部设为0。 8.阅读程序题,选出程序的运行结果()。 #include voidmain() { inta[3][3]={1,3,5,7,9,11,13,15,17},sum=0,i,j; for(i=0;i<3;i++) for(j=0;j<3;j++) { a[i][j]=i+j; if(i==j)sum=sum+a[i][j]; } printf("sum=%d\n",sum); } (A)sum=27(B)sum=12(C)sum=14(D)sum=6 9.以下程序的输出是()。 #include voidmain() { intx; x=5&&0||3; printf("%d\n",x); } (A)0(B)1(C)-1(D)不确定 10.若a、b为int型变量,则执行以下语句后b的值为()。 a=1;b=10; do { b-=a;a++; } while(b--<0); (A)9(B)-2(C)-1(D)8 11.程序中通过调用库函数中字符串函数来实现字符串操作,需通过()命令将string.h文件包含到该程序中。 (A)#define(B)#include(C)#if(D)#iend 12.对于charcx=’\061’;语句,不正确的是。 (A)cx的ASCII值是49。 (B)cx的ASCII八进制值是61。 (C)cx是字符’1’。 (D)cx的值为三个字符。 13.写出程序的运行结果()。 voidmain() { charb[]=”Helloyou”; b[5]=0; printf(“%s\n”,b); } (A)Hello(B)Helloyou(C)you(D)helloyou 14.写出程序的运行结果()。 #include voidmain() { intk,i; inta[10]={1,3,-5,8,4,6,9,10,2,3}; for(i=0,k=i;i<10;i++) if(a[i]>a[k])k=i; printf("k=%d\n",k); } (A)6(B)7(C)8(D)10 15.设a、b和c都是int型变量,且a=1,b=1,c=1;则以下值为0的表达式是 ()。 (A)b>=a(B)a&&c(C)! a||b(D)! a==b 16.设有如下定义: charch=’z’,则执行下面语句后变量ch是值为()。 ch=(‘A’<=ch&&ch<=‘Z’)? (ch+32): ch (A)A(B)a(C)Z(D)z 17.以下程序段的循环次数是()。 for(i=2;i==0;)printf(“%d”,i--); (A)无限次(B)0次(C)1次(D)2次 18.以下正确的说法是()。 (A)实参和与其对应的形参各占用独立的存储单元。 (B)实参和与其对应的形参共占用一个存储单元。 (C)只有当实参和与其对应的形参同名时才共占用相同的存储单元。 (D)形参是虚拟的,不占用存储单元。 19.以下不正确的说法是()。 (A)在不同函数中可以使用相同名字的变量。 (B)形式参数是局部变量。 (C)在函数内定义的变量只在本函数内有效。 (D)在函数内的复合语句中定义的变量在本函数范围内有效。 20.以下能对二维数组a进行正确初始化的语句是()。 (A)inta[2][]={{1,0,1},{5,2,3}}; (B)inta[][3]={{1,2,3},{4,5,6}}; (C)inta[2][4]={{1,2,3},{4,5},{6}}; (D)inta[][3]={{1,0,1},{},{1,1}}; 21.下面叙述正确的是()。 (A)两个字符串所包含的字符个数相同时,才能比较字符串。 (B)字符个数多的字符串比字符个数少的字符串大。 (C)字符串”STOP”与”stop”相等。 (D)字符串”That”小于字符串”The”。 22.下面程序的输出结果是()。 #include voidmain() {intk=0,m=0,i,j; for(i=0;i<2;i++){ for(j=0;j<3;j++) k++; k-=j; } m=i+j; printf("k=%d,m=%d\n",k,m); } (A)k=0,m=3(B)k=0,m=5(C)k=1,m=3(D)k=1,m=5 23.在C语言中,不同运算符组成的表达式运算时按运算符()高低次序进行计算。 (A)优先级(B)结合律(C)操作数目数(D)随意 24.在C语言中,字符串常量使用一对()来界定若干个字符的序列。 (A)“”(B)‘’(C)[](D){} 25.下列描述中不正确的是()。 (A)字符型数组中可以存放字符串。 (B)可以对字符型数组进行整体输入、输出。 (C)可以对整型数组进行整体输入、输出。 (D)不能在赋值语句中通过赋值运算符"="对字符型数组进行整体赋值。 26.C语言中,可以向终端输出一个字符串的函数()。 (A)gets()(B)puts()(C)putchar()(D)getchar() 27.下面()是错误的if语句(设intx,a,b;)。 (A)if(a=b)x++;(B)if(a= (C)if(a-b)x++;(D)if(x)x++; 28.以下不是死循环的语句是()。 (A)for(y=9,x=1;x>++y;x=i++)i=x; (B)for(;;x++=i); (C)while (1){x++;} (D)for(i=10;;i--)sum+=i; 29.若有说明: inta[3][4]={0};则下面正确的叙述是()。 (A)只有元素a[0][0]可得到初值0。 (B)此说明语句不正确。 (C)数组a中各元素都可得到初值,但其值不一定为0。 (D)数组a中每个元素均可得到初值0。 30.若要用fopen函数打开一个新的二进制文件,该文件既要能读也要能写,则文件方式字符串应是()。 (A)“ab+”(B)”rb+”(C)”ab”(D)”wb+” A 题号 一 二 总分 阅卷签名 总分 一、完善题(每小题10分,共30分): 得分 阅卷 1、下面函数用“折半查找法”从有10个数的a数组中对关键字m查找,若找到,返回其下标值,否则返回-1,请填空【1】——【5】,使程序完整。 经典算法提示: 折半查找法的思路是先确定待查元素的范围,将其分成两半,然后比较位于中间点元素的值。 如果该待查元素的值大于中间点元素的值,则将范围重新定义为大于中间点元素的范围,反之亦然。 intsearch(inta[10],intm) {intx1=0,x2=【1】,【2】; while(x1<=x2){ mid=(【3】)/2;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 考证