C语言程序设计试题及参考答案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
C语言程序设计试题及参考答案
精心整理
c语言程序设计一、选择题(共40分,每小题2分)1、以下叙述不正确的是(d)
a、一个c源程序可以由一个或多个函数共同组成
b、一个c源程序必须涵盖一个
main函数c、c程序的基本共同组成单位就是函数
d、在c程序中,注释说明只能位于一条语句的后面
2、以下四个选项中,就是不合法的用户标识符的选项就是(b)a、abcb、12acc、sund、a
3、建有语句inta=4;则继续执行了语句a+=a-=a*a后,变量a的值就是(a)a、-24b、0c、4d、16
4、以下运算符中优先级最低的就是(b)a、
a、inputx、y、z;
b、scanf(“%d%d%d”,&x,&y,&z);
c、scanf(“%d%d%d”,x,y,z);
d、read(“%d%d%d”,&x,&y,&z);9、假定从键盘输入23456,下面程序的输出结果是:(c)voidmain(){intm,n;
scanf(“-=”,&m,&n);printf(“m=%dn=%d\\n”,m,n);}
a、m=23n=45
b、m=234n=56
c、m=23n=456
d、语句有错误
10、若运转时,给变量x输出12,则以下程序的运转结果就是(a)main(){intx,y;
scanf(“%d”,&x);y=x>12?x+10:x-12;printf(“%d\\n”,y);}
精心整理
a、0b、22c、12d、10
11、c语言中while和do-while循环的主要区别(a)a、do-while的循环体至少继
续执行一次
b、while的循环控制条件比do-while的循环控制条件严格
c、do-while允许从外部
转到循环体内d、do-while的循环体不能是复合语句
12、以下对二维数组的恰当表明的语句就是(c)
a、inta[3][]
b、floata(3,4)
c、doublea[3][4]
d、floata(3)(4)13、以下程序的输
出结果是(c)main()
{inti,x[3][3]={1,2,3,4,5,6,7,8,9};for(i=0;i<3;
i++)printf(“%d”,x[i][2-i]);}
a、1,5,9
b、1,4,7
c、3,5,7
d、3,6,914、以下能对一维数组a进行正确初始
化的语句是(c)a、inta[10]=(0,0,0,0,0);b、inta[10]={};c、inta[10]={0};d、inta[10]={10*1};15、以下程序执行后的输出结果是:(a)intfun(inta,intb,
intc){a=456;b=567;c=678;}
voidmain(){intx=10,y=20,z=30;z=fun(x,y,z);printf(“%d,%d,%d\\n”,z,y,x);}
a、30,20,10
b、10,20,30
c、10,30,50
d、10,30,4016、以下说法正确的是(a)如果在一个函数中的复合语句中定义了一个变量,则该变量a、只在该复合语句中有效b、在该函数中有效c、在本程序范围内有效d、为非法变量17、以下函数调用语句中
含有的实参个数为(b)func((exp1,exp2,exp3),(exp4,exp5));a、1b、2c、4d、5
18、在c语言程序中,以下观点恰当的就是(b)。
a、函数的定义可以嵌套,但函数
的调用不可以嵌套b、函数的定义不可以嵌套,但函数的调用可以嵌套c、函数的定义和
函数的调用都不可以嵌套d、函数的定义和函数的调用都可以嵌套19、请读程序
longfun5(intn){longs;
if((n==1)||(n==2))
精心整理s=2;else
s=n+fun5(n-1);return(s);}
main(){longx;x=fun5(4);
printf(%ld\\n”,x);}
上面的程序的运转结果就是(a)a、9b、10c、12d、1820、若存有下面的变量定义,
以下语句中合法的就是d)。
inti,a[10],*p;a、p=a+2;b、p=a[5];c、p=a[2]+2;d、
p=&(i+2);二、填空题(共20分后,每空1分后)1、若a就是int型变量,且a的初值
为6,则排序表达式a+=(b=4)+(c=2)后,a的值12。
2、c语言中三种逻辑运算符为&&、
||____、__!_。
3、在c语言中,逻辑“真”Authenticator1则表示,逻辑
“假”Authenticator0则表示。
4、如a就是int型变量,则排序表达式a=25/3%3后a的值2。
5、若a=1,b=4,c=3,则表达式!(ab>c的值就是0。
7、常用的循环语句存有while 语句、do-while语句和for语句。
8、若存有定义:doublex[3][5];则x数组中行下标的上限为2___,赵统标的上限为__4__。
9、若存有定义:
inta[3][4]={{1,2},{0},{4,6,8,10}};则初始化后,a[1][2]获得的初值就是_______,
a[2][2]获得的初值就是,a[0][2]获得的初值就是。
10、在c语言中,一个函数由函数头
和函数体两部分共同组成,函数体通常包含声明部分和继续执行部分。
三、程序分析题(20分后,每题5分后)1、以下程序的输入结果就是852main(){inty=10;for(;y>0;
y--)if(y%3==0){printf(“%d”,--y);continue;}}
2、有以下程序段,若输入1298,则输出结果是8921main(){
intn1,n2;
scanf(“%d”,&n2);while(n2!=0){n1=n2?;
n2=n2/10;
printf(“%d”,n1);
精心整理}
3、以下程序的输出结果是d1=7d2=5#include“stdio.h”fun(intb){intd=5;d+=b++;
printf(“d1=%d\\n”,d);}main()
{inta=2,d=3;fun(a);d+=a++;printf(“d2=%d\\n”,d);}
4、以下程序的输入结果就是k=5#include“stdio.h”f(intn){switch(g){case0:return0;case1:case2:return1;}
return(f(g-1)+f(g-2));}
main(){intk;k=f(5);printf(“k=%d”,k);}
四、编程题.(共20分,每小题10分)1、编程求1+2+3+……+99+100.2、输入一同学
成绩,判断其成绩等级。
等级范围为:90以上等级为a89~80等级为b79~70等级为
c69~60等级为d60以下等级为e
c语言程序设计参考答案
一、选择题
1---------5dbaba6---------10ccbca11--------15accca16--------20abbad二、填
空题
1)、122)、&&||!3)、10
4)、25)、16)、07)、whilefor
精心整理
8)、249)、08010)、函数头函数体声明继续执行三、程序分析
1)、8522)、89213)、d1=74)、k=5d2=5
四、编程
1、#includemain()
{intsum=0,i;
for(i=1;i<=100;i++)sum=sum+i;
printf(“1+2+……+100=%d\\n”,sum);}2、
#includemain(){floatscore;scanf(“%f”,&score);switch(score/10){case10:case9:p rintf(“yourscoreisa\\n”);break;case8:printf(“yourscoreisb\\n”);break;c ase7 :printf(“yourscoreisc\\n”);break;case6:printf(“yourscoreisd\\n”);break;def ault:printf(“yourscoreise\\n”);}}。