C语言课程习题.doc
- 文档编号:4712242
- 上传时间:2023-05-07
- 格式:DOC
- 页数:20
- 大小:209KB
C语言课程习题.doc
《C语言课程习题.doc》由会员分享,可在线阅读,更多相关《C语言课程习题.doc(20页珍藏版)》请在冰点文库上搜索。
C语言综合练习题
(一)
一选择题(7分,每小题0.5分)
1.设a为整型变量,初值为12,执行完语句a+=a-=a*a后,a的值是()。
A552B144C264D-264
2.下列标识符中,不能作为合法的C用户定义标识符的是()。
Aa3_b3BvoidC_123DIF
3.下列整数值中,不正确的八进制或十六进制数值常量是()。
A0xcdB-017C-ox123D0xfdc
4.若给定条件表达式(M)?
(a++):
(a--),则其中表达式M和()等价。
AM==0BM=1CM!
=1DM!
=0
5.在C语言中,if语句后的一对圆括号中,用以决定分支流程的表达式为()。
A只能是逻辑表达式B只能是关系表达式
C只能是逻辑表达式或关系表达式D可以是任意表达式
6.以下程序的输出结果为()。
main()
{charc;
inti;
for(i=65;i<68;i++)
{c=i+32;
switch(c)
{case‘a’:
printf("%c,",c);break;
case‘b’:
case‘e’:
printf("ok,");
default:
printf("end");
}
}}
Aa,ok,endBa,ok,endendCa,ok,end,endDa,ok,ok
7.数组名作为实参数传递给函数时,数组名被处理为()。
A该数组的长度B该数组的元素个数
C该数组的首地址D该数组中各元素的值
8.关于return语句,下列正确的说法是()。
A可以在同一函数中出现多次B在主函数中不能出现
C必须在每个函数中出现D只能在除主函数之外的函数中出现一次
9.以下程序的输出结果为()。
#defineA3
#defineB(a)(A+1)*a
main()
{intx;
x=3*A+B(7);
printf("x=%d\n",x);
}
Ax=93Bx=37Cx=60Dx=90
10.设有以下定义,则以下对变量w的赋值()是错误的。
enumweek{sun,mon=4,tue,wed,thu,fri,sat}w;
Aw=sun;Bw=(enumweek)4;Cw=san;Dw=(enumweek)9;
11.以下定义结构体类型st1,其中正确的是()。
Atypedefstructstudent
{intnum;intage;}STD;
STDst1;
Bstructst1{intnum,age;}s;
Cstruct{intnum;floatage;}st1;
Dstructst1{intnum;intage;}
12.若有下面的变量定义,以下语句中合法的是()。
inti,a[10],*p;
Ap=a+2;Bp=a[5];Cp=a[2]+2;Dp=&(i+2);
13.设有说明int*ptr[3];,其中标识符ptr是()。
A是一个指向整形变量的指针
B是一个指针,它指向一个具有三个整形元素的一维数组
C是一个指针数组名,每个元素是一个指向整形变量的指针
D定义不合法
14.要打开一个已存在的非空文件“file”用于修改,选择正确的语句()。
Afp=fopen("file","r");Bfp=fopen("file","w");
Cfp=fopen("file","r+");Dfp=fopen("file","w+");
二判断对错,对的划“√”,错的划“×”(5分,每小题0.5分)
1.在TurboC中,实型数据在内存中占4个字节。
()
2.若有形参定义:
inta[10];则a++是合法的表达式。
()
3.若有宏定义:
#definePI3.14i5926,则系统预编译时会报错。
()
4.函数的递归调用不过是一个函数直接地调用它自身。
()
5.定义在main函数后的任何函数都需在main中进行函数声明。
()
6.若有定义:
inta;则scanf(“%d",a);可以给变量a赋值。
()
7.任何数组在使用前必须先定义。
()
8.在int*p;和语句printf(“%d”,*p);中的*p含义相同。
()
9.共用体变量的各个成员所占内存单元的地址相同。
()
10.在使用缓冲文件系统时,与文件输入和输出相关的数据都先送到缓冲区中。
()
三写出下列程序的运行结果(10分,每小题2分)
1.main()
{charc1=‘A’,c2=‘\144’,c3=‘\x44’,c=0xf5,x=13,a;
inti=0122,j=0xa4;
printf(“c1=%c,c4=%c\tc5=%c\n”,c1,c2,c3);
printf(“%d,%d\n”,i,j);
i=-34;
j=20;
printf(“%d,%d,%d\n”,i%j,i&j<<2,sizeof(j));
printf(“c=%d\n”,c|x);
a=c^x<<2;
printf(“a=%d\n”,a);
}
2.main()
{
intx,y=1,z=10;
if(y!
=0)x=5;
printf(“x=%d\t”,x);
x=1;
if(z<0)
if(y>0)x=3;
elsex=5;
printf(“x=%d\n”,x);
if(z=y<0)x=3;
elseif(y==0)x=5;
elsex=7;
printf(“x=%d\t”,x);
printf(“z=%d\n”,z);
}
3.main()
{chars[20]=“Ilikeit.”,t[20]=“Areyou?
”,c[20];
inti=0;
while(s[++i]!
=‘\0’)
t[i]=s[i];
t[i]=0;
printf(“strings:
%s\n”,s);
printf(“stringt:
%s\n”,t);
}
4.inti=5;
main()
{inti=3;
{inti=10;
i++;
printf(“%d\n”,i);
}
f1();
i+=1;
printf(“%d\n”,i);
}
intf1()
{i=i+1;
return(i);
}
5.main()
{inti=10,a[]={10,20,30,15},*p1;
char*b=”Learning”,**p2=&b;
p1=&i;
printf(“%4d”,*p1+20);
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 课程 习题