大学C语言考试题库.docx
- 文档编号:8767828
- 上传时间:2023-02-01
- 格式:DOCX
- 页数:55
- 大小:36.51KB
大学C语言考试题库.docx
《大学C语言考试题库.docx》由会员分享,可在线阅读,更多相关《大学C语言考试题库.docx(55页珍藏版)》请在冰豆网上搜索。
大学C语言考试题库
单项选择
题号:
1482
执行以下程序段后,输出结果和a的值是()。
inta=10;printf("%d",a++);
A11和10
B、11和11
C、10和11
D10和10
答案:
C
题号:
2100
已知字符'A'的ASCH代码值是65,字符变量c1的值是'A',c2的值是'D'.执行语句
printf("%d,%d",c1,c2-2);后,输出结果是
A、65,66
B、A,B
C、65,68
DA,68
答案:
A
题号:
5055
相同结构体类型的变量之间,可以()。
A、比较大小
B、地址相同
C、赋值
D相加
答案:
C
题号:
3217
inta[10];合法的数组元素的最小下标值为()。
A1
B、0
C、10
D9
答案:
B
题号:
45
能正确表示逻辑关系:
"a>10或a<0"的C语言表达式是
A、a>=0|a<=10
B、a>=10ora<=0
C、a>=10&&a<=0
D、a>=10||a<=0
答案:
D
题号:
157
main()
{intx=1,a=0,b=0;
switch(x)
{case0:
b++;
case1:
a++;
case2:
a++;b++;}printf("a=%d,b=%d",a,b);
}该程序的输出结果是()
A、2,2
B、2,1
C、1,1
D1,0
答案:
B
题号:
4784
设变量a是整型,f是实型,i是双精度型,则表达式10+'a'+i*f值的数据类型为()。
A、不确定
B、double
C、int
Dfloat
答案:
B
题号:
1647
以下程序中,while循环的循环次数是
main()
{
inti=0;
while(i<10)
{
if(i<1)continue;
if(i==5)break;
i++;
}
}
A、死循环,不能确定次数
B、6
C、4
D1
答案:
A
题号:
191
若有说明语句:
charc='\72';则变量c()
A、说明不合法,c的值不确定
B、包含3个字符
C、包含1个字符
D包含2个字符
答案:
C
题号:
1300
下列程序运行结果为:
#defineP3
#defineS(a)P*a*a
main()
{intar;
ar=S(3+5);
printf("\n%d",ar);
}
A、
192
B、
25
C、
29
D
27
答案:
C
判断
题号:
6755
若i=3,则printf("%d",-i++);输出的值为-4答案:
错误
题号:
6167
表达式(j=3,j++)的值是4.
答案:
错误题号:
1495
C语言中只能逐个引用数组元素而不能一次引用整个数组。
答案:
正确
题号:
2921
参加位运算的数据可以是任何类型的数据。
答案:
错误
题号:
2691
若有inti=10,j=2;则执行完i*=j+8;后i的值为28。
答案:
错误
题号:
464
若a=3,b=2,c=1则关系表达式"(a>b)==c"的值为"真"。
答案:
正确
题号:
66
若有#defineS(a,b)a*b则语句area=S(3,2);area的值为6。
答案:
正确
题号:
758
若有宏定义:
#defineS(a,b)t=a;a=b;b=t由于变量t没定义,
所以此宏定义是错误的。
答案:
错误
题号:
2158
#define和printf都不是C语句。
答案:
正确
题号:
5102
关系运算符<=与==的优先级相同。
答案:
错误
填空
题号:
1076
表达式3.5+1/2的计算结果是,
答案:
空1:
3.5
题号:
551
请写出以下程序的输出结果-
main()
{
inta=100;
if(a>100)printf(
“i%d,a>100);
elseprintf(
“i%d,a<=100);
}
答案:
空1:
1
题号:
3255
表达式(int)((double)(5/2)+2.5)的值是
答案:
空1:
4
题号:
2472
阅读下面程序,程序执行后的输出结果为<
#include"stdio.h"main()
{
chara,b;
for(a=0,,b=9,;a
}
答案:
空1:
0918273645
题号:
937
以下程序段的输出结果是
inti=0,sum=1;do
{sum+=i++;
}while(i<5);
printf(“%)d,sum);
答案:
空1:
11
题号:
5213
以下程序段的输出结果是、、、、。
intx=0177;
printf(“x=%3d,x=%6d,x=%6o,x=%6x,x=%6u,x,x,x,x,x);
答案:
空1:
x=127
空2:
x=127
空3:
x=177
空4:
x=7f
空5:
x=127
题号:
3210
以下程序的输出结果是o
main()
{inta=3,b=2,c=1;
c-=++b;
b*=a+c;
{intb=5,c=12;
c/=b*2;
a-=c;
printf(“%d,%d,%d,”,a,b,c);
a+=--c;
}
printf(“%d,%d,n%d,a,b,c);
答案:
空1:
2,5,123,-2
题号:
4474
、最小
当计算机用两个字节存放一个整数时,其中能存放的最大十进制整数是十进制整数是,它们的二进制形式是0
答案:
空1:
65535
空2:
-32768
空3:
1111111111111111,1000000000000000
题号:
2791
结构化程序由、、三种基本结构组成。
答案:
空1:
顺序
空2:
条件分支【或】选择
空3:
循环
题号:
561
阅读下面程序,程序执行后的输出结果是0
#include"stdio.h"
main()
{
intx,y,z;
x=1;y=2;z=3;
if(x>y)
if(x>z)printf("%d",x);elseprintf("%d",y);
printf("%d\n",z);
}
答案:
空1:
3
程序设计
题号:
2660
/*
【程序设计】
功能:
计算出k以内最大的10个能被13或17整除的自然数之和。
(k〈3000)。
*/#include
intfun(intk){
Begin
/**********
End
}
main()
{
intm;
printf("Enterm:
");scanf("%d",&m);
rou」na)」
《++q¥e也((OHH'L&E-sHHeL&gm((OLVq)osos(cxlH殳)¥壬m
oHqCDHec一
pno¥sos_(n¥sos
宀s-=5p&=」no)七UE4eunro_(5-=p&=-N_=ueos4(++slnHveus)」04
宀co」」山山匚①七」M=)七£」d
(■nnNHHlno)七FMLep」no=)u①dor-Lno宀co」」山山匚pe£=)七£」d(■nnNHHNW(」=-=lep.u=)u①dolrN一olu一
ru一@u一
Lkno*-N_*山J匚(mqpo>
o©q-(E)ua-=5p&S=_ns2①laur)七£」d
题号:
5854
C语言中不可以嵌套的是()。
A、选择语句
B、循环语句
C、函数调用
D函数定义
答案:
D
题号:
1957
C语言中,逻辑"真"等价于
A、非零的整数
B、大于零的整数
C、非零的数
D大于零的数
答案:
C
题号:
3786
用户定义的函数不可以调用的函数是()。
A、本文件外的
B、main函数
C、本函数下面定义的
D非整型返回值的
答案:
B
题号:
1764
以下叙述中正确的是()。
A、C程序中注释部分可以出现在程序中任意合适的地方
B、分号是C语句之间的分隔符,不是语句的一部分
C、花括号{和””只能作为函数体的定界符
D构成C程序的基本单位是函数,所有函数名都可以由用户命名答案:
A
题号:
299
下面四个选项中,均是不合法的浮点数的选项是()。
A、
-e3
.2341
e3
B、
160.
0.12
e3
C、
123
2e4.2
.e5
D
-.18
123e4
0.0
答案:
C
题号:
6131
假定所有变量均已正确定义,下列程序段运行后x的值是()
k1=1;
k2=2;
k3=3;
x=15;
if(!
k1)x--;
elseif(k2)x=4;
elsex=3;
A、15
B、14
C、3
D4
答案:
D
题号:
3208
若变量已正确定义,以下程序段的输出结果是
x=5.16894;
printf(“%f,(int)(x*1000+0.5)/(float)1000);
A5.17000
B、输出格式说明与输出项不匹配,输出无定值
C、5.168000
D5.169000
答案:
D
题号:
5043
以下选项中合法的实型常数是()。
A5E2.0
B、1.3E
C、E-3
D.2E0
答案:
D
题号:
5608
有以下程序
main()
{inti;
for(i=0;i<3;i++)
switch(i)
{case1:
printf("%d",i);
case2:
printf("%d",i);default:
printf("%d",i);
}
}
执行后输出结果是
A、011122
B、120
C、012020
D012
答案:
A
题号:
572
对以下说明语句inta[10]={6,7,8,9,10};的正确理解是()
A、将5个初值依次赋给a[1]至a[5]
B、将5个初值依次赋给a[6]至a[10]
C、因为数组长度与初值的个数不相同,所以此语句不正确
D将5个初值依次赋给a[0]至a[4]
答案:
D
判断
题号:
1325
若有说明intc;则while(c=getchar());是正确的C语句。
答案:
正确
题号:
3386
若有inti=10,j=0;则执行完语句
if(j=0)i++;elsei--;i的值为11。
答案:
错误
题号:
464
若a=3,b=2,c=1则关系表达式"(a>b)==c"的值为"真"。
答案:
正确
题号:
2316
while和do…while循环不论什么条件下它们的结果都是相同的答案:
错误
题号:
2989
charc[]="VeryGood";是一个合法的为字符串数组赋值的语句
答案:
正确
题号:
5034
语句scanf("%7.2f",&a);是一个合法的scanf函数。
答案:
错误
题号:
2067
如果想使一个数组中全部元素的值为0,可以写成
inta[10]={0*10};
答案:
错误
题号:
5263
x*=y+8等价于x=x*(y+8)。
答案:
正确
题号:
3862
如果函数值的类型和return语句中表达式的值不一致,则以函数类型为准。
答案:
正确
题号:
3558
整数-32100可以赋值给int型和longint型变量。
答案:
正确
填空
题号:
551
请写出以下程序的输出结果-
main()
{
int
a=100;
if(a>
100)printf(
else
printf(
}
“%d,a>100);
“%d,a<=100);
答案:
空1:
1
题号:
1575
对以下数学式,写出三个等价的C语言表达式是、
ab*c
答案:
空1:
a/c/b
【或】
a/(b*c)
【或】
a/b/c
空2:
a/c/b
【或】
a/b/c
【或】
a/(b*c)
空3:
a/b/c
【或】
a/c/b
【或】
a/(b*c)
题号:
1076
表达式3.5+1/2的计算结果是,
答案:
空1:
3.5
题号:
2758
若x为double型变量,请写出运算x=3.2,++x后表达式的值和变量的值<
答案:
空1:
4.2
空2:
4.2
题号:
582
以下程序的执行结果是‘
main()
{
intk=8;
switch(k)
case9:
k+=1;
case10:
k+=1;
case11:
k+=1;break;default:
k+=1;
}
printf("%d\n",k);
}
答案:
空1:
9
题号:
2868
若要通过以下语句给a、b、c、d分别输入字符A、B、C、D,给w、x、y、z分别输入
10、20、30、40,正确的输入形式是。
请用
scanf(“%d%c%d%c%d%c%”%&w,&a,&x,&b,&y,&c,&z,&d);
答案:
空1:
10A20B30C40D
题号:
4063
以下程序段的输出结果是、、、
doublea=513.789215;
printf(“a=%8.6f,a=%8.2f,a=%14.8f,a=%14i”lfa,a,a,a);
答案:
空1:
a=513.789215
空2:
a=513.79
空3:
a=513.78921500
空4:
a=513.78921500
题号:
5076
以下程序的输出结果是‘
main()
{inta=0;
a+=(a=8);printf("%d\n",a);}
答案:
空1:
16
题号:
5410
以下程序的执行结果是o
main()
{
inta,b,*p=&a,*q=&b;
a=10;
b=20;
*p=b;
*q=a;
printf(a=%d,b=%d\n”,a,b);}
答案:
空1:
a=20,b=20
题号:
6975
以下程序的输出结果是o
main()
{intx=2;while(x--);printf(“%d,x);
}
答案:
空1:
-1
程序设计
题号:
58
/*
【程序设计】
功能:
将字符串中的小写字母转换为对应的大写字母,其它字符不变。
*/#include"string.h"#include
voidchange(charstr[])
Begin
End
main()
{
voidchange();charstr[40];gets(str);
change(str);puts(str);
bky();
}
voidbky()
{
FILE*IN,*OUT;chari[200];
IN=fopen("in.dat","r");if(IN==NULL)
{
printf("ReadFILEError");
}
OUT=fopen("out.dat","w");if(OUT==NULL)
{
printf("WriteFILEError");
}
fscanf(IN,"%s",i);
change(i);
fprintf(OUT,"%s\n",i);
fclose(IN);fclose(OUT);
}
示例代码:
inti;
for(i=0;str[i]!
='\0';i++)if(str[i]>='a'&&str[i]<='z')str[i]=str[i]-32;
题号:
45
能正确表示逻辑关系:
"a>10或a<0"的C语言表达式是
A、a>=0|a<=10
B、a>=10ora<=0
C、a>=10&&a<=0
Da>=10||a<=0
答案:
D
题号:
53
若已定义x为int类型变量,下列语句中说明指针变量p的正确语句是()
A、int*p=&x;
B、intp=&x;
C、*p=*x;
Dint*p=x;
答案:
A
题号:
2244
字符串指针变量中存入的是
A、第一个字符
B、字符串
C、字符串的首地址
D字符串变量答案:
C
题号:
3722
下列字符数组长度为5的是
A、charc[10]={'h','a','b','c','d'};
B、charb[]={'h','a','b','c','d','\0'};
C、chara[]={'h','a','b','c','d'};
Dchard[6]={'h','a','b','c','\0'};
答案:
C
题号:
2703
从键盘上输入某字符串时,不可使用的函数是()
A、getchar()
B、scanf()
C、fread()
Dgets()
答案:
A
题号:
3402
以下对整型数组a的正确说明是:
A、intn=10,a[n];
B、
int11;
scanf(“%cf;fcn);
intajn];屮
C、
idefineSIZEIO
inta[SIZE]
Dinta(10);
答案:
C
题号:
130
a数组的
若chara[10];已正确定义,以下语句中不能从键盘上给所有元素输入值的语句是()。
A、seanf("%s",a);
B、for(i=0;i<10;i++)a[i]=getchar();
C、a=getchar();
Dgets(a);
答案:
C
题号:
191
若有说明语句:
charc='\72';则变量c()。
A、说明不合法,c的值不确定
B、包含3个字符
C、包含1个字符
D包含2个字符
答案:
C
题号:
4539
以下程序的输出结果是
main()
{inti=1,j=3;
printf(“%c++);,i
{inti=0;
i+=j*2;
printf(“%d,%d,”,i,j);
}
pritnf(“%d/%d,i,j);
}
A、1,6,3,2,3
B、2,7,3,2,3
C、1,7,3,2,3
D2,6,3,2,3
答案:
A
题号:
300
以下对一维整型数组a的正确说明是()。
A、#defineSIZE10(换行)inta[SIZE];
B、inta(10);
C、intn;scanf("%d",&n);inta[n];
Dintn=10,a[n];
答案:
A
判断
题号:
2691
若有inti=10,j=2;则执行完i*=j+8;后i的值为28。
答案:
错误
题号:
2067
如果想使一个数组中全部元素的值为0,可以写成
inta[10]={0*10};
答案:
错误
题号:
1118
函数调用语句:
func(rec1,rec2+rec3,(rec4,rec5));中,含有的实参个数是5.
答案:
错误
题号:
1534
C语言所有函数都是外部函数.
答案:
错误
题号:
2158
#define和printf都不是C语句。
答案:
正确
题号:
6321
循环结构中的continue语句是使整个循环终止执行
答案:
错误
题号:
2583
在程序中定义了一个结构体类型后,可以多次用它来定义具有
该类型的变量。
答案:
正确题号:
3386若有inti=10,j=0;则执行完语句
if(j=0)i++;elsei--;i的值为11。
答案:
错误
题号:
2998
c程序总是从程序的第一条语句开始执行.答案:
错误
题号:
5034
语句scanf("%7.2f",&a);是一个合法的scanf函数
答案:
错误
填空
题号:
582
以下程序的执行结果是。
main()
{
intk=8;
switch(k)
{
case9:
k+=1;
case10:
k+=1;
case11:
k+=1;break;
default:
k+=1;
}
printf("%d\n",k);
}
答案:
空1:
9
题号:
5171
把a1、a2定义成单精度实型变量,并赋初值1的说明语句是<
答案:
空1:
floatal=1.0,a2=1.0;
题号:
63
以下程序的输出结果是。
#definePR(ar)printf(“ar=%“,ar)main()
{intj,a[]={1,3,5,7,9,11,13,15},*p=a+5;
for(j=3;j;j--)
switch(j)
{case1:
case2:
PR(*p++);break;
case3:
PR(*(--p));
}
}
答案:
空1:
ar=9ar=9ar=11
题号:
3255
表达式(int)((double)(5/2)+2.5)的值是.
答案:
空1:
4
题号:
1076
表达式3.5+1/2的计算结果是。
答案:
空1:
3.5
题号:
6547
当a=1、b=2、c=3时,以下if语句执行后,a、b、c中的
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 大学 语言 考试 题库
![提示](https://static.bdocx.com/images/bang_tan.gif)