C语言复习题及答案老师给的.docx
- 文档编号:3999458
- 上传时间:2022-11-27
- 格式:DOCX
- 页数:38
- 大小:36.69KB
C语言复习题及答案老师给的.docx
《C语言复习题及答案老师给的.docx》由会员分享,可在线阅读,更多相关《C语言复习题及答案老师给的.docx(38页珍藏版)》请在冰豆网上搜索。
C语言复习题及答案老师给的
复习A:
一、单项选择题
1、如果要把常量327存入变量a中,a不能定义得类型就是哪一个?
(B )
A)intB)char C)longD)float
2、若x为unsignedint型变量,则执行下列语句后x值为(D)
x=65535;
printf(“%d\n”,x);
A)65535B)1C)无定值D)1
3、有以下程序
main
{inta=1,b=2,m=0,n=0,k;k=(n=b>a)||(m=a
printf(″%d,%d\n″,k,m);
}
程序运行后得输出结果就是(C)
A)0,0 B)0,1 C)1,0 D)1,1
4、在C语言中,如果下面得变量都就是int类型,则输出得结果就是(C)。
sum=pad=5;pAd=sum++,pAd++,++pAd;
printf("%d\n",pad);
A)7B)6C)5D)4
5、以下程序得输出结果就是(A)。
main
{inta=4,b=5,c=0,d;
d=!
a&&!
b||!
c;
printf("%d\n",d);
}
A)1B)0C)非0得数D)1
6、当执行以下程序段时(A)。
x=1;
do{
x=x*x;
}while(!
x);
A)循环体将执行一次B)循环体将执行两次
C)循环体将执行无限次D)系统将提示有语法错误
7、全局变量得存储类型可以定义为( D )。
A)auto或staticB)extern或register
C)auto或externD)extern或static
8、定义全局变量时,若变量得得存储类别缺省,则默认得存储类型就是( C )。
A)autoB)register
C)externD)static
9、已知:
inta,x;则正确得赋值语句就是(C)。
A)a=(a[1]+a{2})/2;B)a*=*a+1;
C)a=(x=1,x++,x+2);D)a="good";
10、已知:
inta,*p=&a;则下列函数调用中错误得就是(D)。
A)scanf("%d",&a);B)scanf("%d",p);
C)printf("%d",a);D)printf("%d",p);
11、下述程序得输出结果就是 ( D )。
#include
voidmain()
{structplex
{intx;
inty;
}cnum[2]={1,3,2,7};
printf(“%d”,cnum[0]、y/cnum[0]、x*cnum[1]、x);
}
A)0B)1C)3D)6
12、下述程序得输出结果就是( B )。
#include
voidmain()
{union
{unsignedcharc;
unsignedinti[4];
}z;
z、i[0]=0x39;
z、i[1]=0x36;
printf(“%c”,z、c);
}
A)6B)9C)0D)3
13、下述关于C语言文件操作得结论中,( B )就是正确得。
A)对文件操作必须先关闭文件
B)对文件操作必须先打开文件
C)对文件操作顺序无要求
D)对文件操作前必须先测试文件就是否存在,然后再打开文件
14、以下程序得输出结果就是( C)。
main
{charch[3][4]={"123","456","78"},*p[3];
inti;
for(i=0;i<3;i++)
p[i]=ch[i];
for(i=0;i<3;i++)
printf("%s",p[i]);}
A)123456780B)123456780C)12345678D)147
15、对于所定义得二维数组a[2][3],元素a[1][2]就是数组得第(D)个元素。
A)3B)4C)5D)6
1、赋值运算符得优先级低于关系运算符( √ )。
2、条件运算符得结合方向就是“自左向右”( × )。
3、C语句得循环语句中循环体如果包含一个以上得语句,必须以复合语句形式出现( √ )。
4、C程序中得函数不能嵌套调用,但可嵌套定义( × )。
5、若自定义函数要求函数名返回一个值,则该函数体中必须要有return语句(× )。
6、当形式参数为指针变量名时,实际参数可为指针变量名、数组名或其它类型变量得首地址( √ )。
7、若有说明:
staticinta[3][4];,则数组a中各数组元素可在程序得编译阶段得到初值0( √ )。
8、若用数组名作为函数调用时得实参,则实际上传递给形参数组得就是数组得第一个元素得值( √ )。
9、利用指针与结构体类型可以构成表、树等复杂得数据结构( √ )。
10、共用体变量得地址与它得各成员得地址都就是同一地址( √ )。
11、printf函数中得“%0”格式参数表示用来输出unsigned型数据(×)。
12、在一个C程序中,所有要使用得变量与要调用得函数都必须在main()函数中定义(×)。
13、赋值运算符得结合性就是“自右至左”(√)。
14、一个C程序可以由多个源程序文件组成(√)。
15、dowhile语句构成得循环,当while语句中得表达式得值为零时结束循环(√)。
三、写出下面各程序得运行结果
1、#include
main()
{inti=0,j=0,k=0,m;
for(m=0;m<4;m++)
switch(m)
{case0:
i=m++;
case1:
j=m++;
case2:
k=m++;
case3:
m++;
}
printf(“\n%d,%d,%d,%d”,i,j,k,m);
}
2、#include
main()
{inti=1;
while(i<=15)
if(++i%3!
=2)
continue;
else
printf(“%d”,i);
}
3、#include
add1(inta[],intn)
{inti;
for(i=0;i } main {staticintarray[]={0,1,2,3,4,5,6,7,8,9}; intj; add1(array,10); for(j=0;j<10;j++) printf(“%d”,array[j]); } 4、uniondata {longw; floatx; inty; charz; }beta; main() {beta、w=123456; beta、y=888; beta、x=3、14; beta、z=’x’; printf(“%c”,beta、y); } 5、#include typedefstructstudent{ charname[10]; longsno; floatscore; }STU; main() { STUa={"zhangsan",2001,95},b={"Shangxian",2002,90},c={"Anhua",2003,95},d,*p=&d; d=a; if(strcmp(a、name,b、name)>0)d=b; if(strcmp(c、name,d、name)>0)d=c; printf("%ld%s\n",d、sno,p>name); } 四、程序填空 1、以下程序就是从键盘上输入若干个学生得成绩,统计并输出最高成绩与最低成绩,当输入负数时结束输入,请将缺省语句填上。 main() {floatx,amax,amin; scanf(“%f”,&x); amax=x;amin=x; while(①) {if(②)amax=x; if(③)amin=x; scanf(“%f”,&x); } printf(“amax=%f,amin=%f\n”,amax,amin); }2、下面得程序就是用指针来交换两个数据,请将缺省语句填上。 voidexchange(int*p,int*q) {intt; t=*p;*p=*q;*q=t;} main {inta,b,*x,*y; a=10;b=20; x=&a;① ② printf(“%d%d\n”,*x,*y); } 五、程序设计题 有10个学生,每个学生得数据包括学号、姓名、3门课得成绩,从键盘输入10个学生数据,要求打印出3门课总平均成绩,以及最高分得学生得数据(包括学号、姓名、3门课得成绩、平均分数。 2、用自定义函数与数组求n个数得平均值,并用主函数调用 参考答案: 一、单项选择题 1、B2、D3、C4、C5、A 6、A7、D8、C9、C10、D 11、D12、B13、B14、C15、D 二、判断题 ( √ )2、( × )3、( √ )4、( × )5、( × ) 6、 √ )7、( √ )8、( √ )9、( √ )10、( √ ) 11、(×)12、(×)13、(√)14、(√)15、(√) 三、写出程序得运行结果 1、答案就是: 0,1,2,5 2、答案就是: 2581114 3、答案就是: 12345678910 4、答案就是: x 5、答案就是: 2002Shangxian 四、程序填空 1、答案就是: ①x>=0②x>amax③x 2、答案: ①y=&b;②exchange(x,y); 五、程序设计题 1、参考答案: #defineN10 structstudent {charnum[6]; charname[8]; intscore[4]; floatave; }stu[N]; main {inti,j,max,maxi,sum; floataverage; /*输入*/ for(i=0;i {printf(“\nInputscoresofstudent%d,\n”,i+1); printf(“No、: ”); scanf(“%s”,stu[i]、num); printf(“name: ”); scanf(“%s”,stu[i]、name); for(j=0;j<3;j++) {printf(“score%d: ”,j+i); scanf(“%d”,&stu[i]、score[j]); } } /*计算*/ average=0; max=0; maxi=0;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 复习题 答案 老师
![提示](https://static.bdocx.com/images/bang_tan.gif)