C语言选择题60.docx
- 文档编号:26032933
- 上传时间:2023-06-17
- 格式:DOCX
- 页数:28
- 大小:25.55KB
C语言选择题60.docx
《C语言选择题60.docx》由会员分享,可在线阅读,更多相关《C语言选择题60.docx(28页珍藏版)》请在冰豆网上搜索。
C语言选择题60
1、C语言中下列叙述正确的是______。
不能使用do-while语句构成循环
do-while语句构成的循环,必须用break语句才能退出
do-while语句构成的循环,当while语句中的表达式值为非零时结束循环
do-while语句构成的循环,当while语句中的表达式值为零时结束循环
3、能正确表示a和b同时为正或同时为负的逻辑表达式是______。
(a>=0||b>=0)&&(a<0||b<0)
(a>=0&&b>=0)&&(a<0&&b<0)
(a+b>0)&&(a+b<=0)
a*b>0
5、请选出可用作C语言用户标识符的一组标识符______。
①void②a3_b3③For④2a
define_123_abcDO
WORDIFcasesizeof
1
2
3
4
6、若x和y都是int型变量,x=100、y=200,且有下面的程序片段
printf("%d",(x,y));
上面程序片段的输出结果是______。
200
100
200,100
输入格式符不够,输出不确定的值
8、若执行下面的程序时从键盘上输入3和4,
main()
{inta,b,s;
scanf("%d%d",&a,&b);
s=a;
if(a
s=s*s;
printf("%d\n",s);
}
则输出是______。
9、设ch是char型变量,其值为A,且有下面的表达式
ch=(ch>='A'&&ch<='Z')?
(ch+32):
ch
上面表达式的值是______。
A
a
Z
Z
10、设有以下语句,其中不是对a数组元素的正确引用的是______。
(其中0≤i<10)
inta[10]={0,1,2,3,4,5,6,7,8,9,},*p=a;
a[p-a]
*(&a[i])
p[i]
*(*(a+i))
11、下面程序
main()
{
intx=10,y=3;
printf("%d\n",y=x/y);
}
的输出是______。
0
1
3
不确定的值
12、下面的程序中______错误(每行程序前面的数字是行号)。
1#include
2main()
3{
4floata[3]={0.0};
5inti;
6for(i=0;i<3;i++)scanf("%d",a[i]);
7for(i=1;i<3;i++)a[0]=a[0]+a[i];
8printf("%f\n",a[0]);
9}
没
第4行
第6行
第8行
13、有如下程序
main()
{
intn=9;
while(n>6)
{
n--;
printf("%d",n);
}
}
该程序的输出结果是______。
987
876
8765
9876
14、若变量已正确定义并赋值,下面符合C语言的表达式是______。
a:
=b+1
a=b=c+2
int18.5%3
a=a+7=c+b
15、有如下程序
main()
{floatx=2.0,y;
if(x<0.0)y=0.0;
elseif(x<10.0)y=1.0/x;
elsey=1.0;
printf("%f\n",y);
}
该程序输出结果是______。
0.000000
0.250000
0.500000
1.000000
16、有如下程序段
int*p,a=10,b=1;
p=&a;a=*p+b;
执行该程序段后,a的值为______。
12
11
10
编译出错
17、有如下程序
main()
{
intn[5]={0,0,0},i,k=2;
for(i=0;i printf("%d\n",n[k]); } 该程序的输出结果是______。 不确定的值 2 1 0 18、有如下定义 structperson{charname[9];intage;}; structpersonclass[10]={"John",17, "Paul",19, "Mary",18, "Adam",16,}; 根据上述定义,能输出字母M的语句是______。 printf("%c\n",class[3].name); printf("%c\n",class[3].name[1]); printf("%c\n",class[2].name[1]); printf("%c\n",class[2].name[0]); 19、以下列出C语言常量中,错误的是______。 OxFF 1.2e0.5 2L '\72' 20、以下变量x、y、z均为double类型且已正确赋值,不能正确表示数学式子x/(y*z)的C语言表达式是______。 x/y*z x*(1/(y*z)) x/y*1/z x/y/z 21、设有以下说明语句 structex {intx;floaty;charz;}example; 则下面的叙述中不正确的是______。 struct是结构体类型的关键字 example是结构体类型名 x,y,z都是结构体成员名 structex是结构体类型 22、X、Y、Z被定义为int型变量,若从键盘给X、Y、Z输入数据,正确的输入语句是______。 INPUTX,Y,Z; scanf("%d%d%d",&X,&Y,&Z); scanf("%d%d%d",X,Y,Z); read("%d%d%d",&X,&Y,&Z); 23、t为int类型,进入下面的循环之前,t的值为0, while(t=1) {......} 则以下叙述中正确的是______。 循环控制表达式的值为0 循环控制表达式的值为1 循环控制表达式不合法 以上说法都不对 24、设有以下函数; f(inta) {intb=0; staticintc=3; b++;c++; return(a+b+c); } 如果在下面的程序中调用该函数,则输出结果是______。 main() {inta=2,i; for(i=0;i<3;i++)printf("%d\n",f(a)); } A)B)C)D) 7777 89107 911137 A B C D 25、以下定义语句中,错误的是______。 inta[]={1,2}; char*a[3]; chars[10]="test"; intn=5,a[n]; 26、以下程序的输出结果是______。 main() {inti,a[10]; for(i=9;i>=0;i--)a[i]=10-i; printf("%d%d%d",a[2],a[5],a[8]); } 258 741 852 369 27、以下程序的输出结果是______。 main() {inta,b; for(a=1,b=1;a<=100;a++) {if(b>=10)break; if(b%3==1) {b+=3;continue;} } printf("%d\n",a); } 101 6 5 4 CONTINUE语句和BREAK语句 28、以下程序的结果是______。 inta,b; voidfun() {a=100;b=200;} main() {inta=5,b=7; fun(); printf("%d%d\n",a,b); } 100200 57 200100 75 29、以下叙述中正确的是______。 C语言中的文件是流式文件,因此只能顺序存取数据 打开一个已存在的文件并进行了写操作后,原有文件中的全部数据必定被覆盖 在一个程序中当对文件进行了写操作后,必须先关闭该文件然后再打开,才能读到第1个数据 当对文件的读(写)操作完成之后,必须将它关闭,否则可能导致数据丢失 30、C语言中,函数值类型的定义可以缺省,此时函数值的隐含类型是______。 Void int float double 31、有以下程序 structSTU {charnum[10];floatscore[3];} main() {structSTUs[3]={{"20021",90,95,85}, {"20022",95,80,75}, {"20023",100,95,90}},*p=s; inti;floatsum=0; for(i=0;i<3;i++) sum=sum+p->score[i]; printf("%6.2f\n",sum); } 程序运行后的输出结果是______。 260.00 270.00 280.00 285.00 32、有以下程序 main() {intp[7]={11,13,14,15,16,17,18},i=0,k=0; while(i<7&&p[i]%2){k=k+p[i];i++;} printf("%d\n",k); } 执行后输出的结果是______。 58 56 45 24 33、设变量x为float型且已赋值,则以下语句中能将x中的数值保留到小数点后两位,并将第三位四舍五入的是______。 x=x*100+0.5/100.0; x=(x*100+0.5)/100.0 x=(int)(x*100+0.5)/100.0; x=(x/100+0.5)/100.0; 34、有以下程序 main() {inti,s=0; for(i=1;i<10;i+=2)s+=i+1; printf("%d\n",s); } 自然数1~9的累加和 自然数1~10的累加和 自然数1~9中奇数之和 自然数1~10中偶数之和 35、若程序中定义了以下函数 doublemyadd(doublea,doubleb) {return(a+b);} 并将其放在调用语句之后,则在调用之前应该对函数进行说明,以下选项中错误的说明是______。 doublemyadd(doublea,b); doublemyadd(double,double); doublemyadd(doubleb,doublea); doublemyadd(doublex,doubley); 36、下面程序的功能是输出以下形式的金字塔图案: * *** ***** ******* main() {inti,j; for(i=1;i<=4;i++) {for(j=1;j<=4-i;j++)printf(""); for(j=1;j<=______;j++)printf("*"); printf("\n"); } } 在下划线处应填入的是______。 i 2*i-1 2*i+1 i+2 37、请选出以下程序的输出结果______。 #include sub(intx,inty,int*z){ *z=y-x; } main(){ inta,b,c; sub(10,5,&a);sub(7,a,&b);sub(a,b,&c); printf("%d,%d,%d\n",a,b,c); } 5,2,3 -5,-12,-7 -5,-12,-17 5,-2,-7 38、请选出以下程序段的输出结果______。 #include #defineMIN(x,y)(x x: y main() { inti,j,k; i=10;j=15; k=10*MIN(i,j); printf("%d\n",k); } 15 100 10 150 39、设有如下的程序段 charstr[]="Hello"; char*ptr; ptr=str; 执行完上面的程序段后,*(ptr+5)的值为______。 'o' '\0' 不确定的值 'o'的地址 40、已有定义: charc;,程序前面已在命令中包含ctype.h文件。 不能用于判断c中的字符是否为大写字母的表达式是______。 isupper(c) 'A'<=c<='Z' 'A'<=c&&c<='Z' c<=('z'-32)&&('a'-32)<=c 41、下面程序的输出是______。 intm=13; intfun2(intx,inty) {intm=3; return(x*y-m); } main() {inta=7,b=5; printf("%d\n",fun2(a,b)/m);} 1 2 7 10 42、有以下程序 #include intfun(chars[]) {intn=0; while(*s<='9'&&*s>='0'){n=10*n+*s-'0';s++;} return(n); } main() {chars[10]={'6','1','*','4','*','9','*','0','*'}; printf("%d\n",fun(s)); } 程序的运行结果是______。 9 61490 61 5 43、以下函数返回a所指数组中最小值所在的下标值。 fun(int*a,intn) { inti,j=0,p; p=j;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 选择题 60
![提示](https://static.bdocx.com/images/bang_tan.gif)