资源描述:
《2013年春c程序设计期末试卷及答案new》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、浙江大学城市学院年级:_____________专业:_____________________班级:_________________学号:_______________姓名:__________________…………………………………………………………..装………………….订…………………..线………………………………………………………诚信应考考出水平考出风格浙江大学城市学院2012—2013学年第2学期期末考试试卷《C程序设计基础与实验》开课单位:计算分院;考试形式:闭卷;考试时间:2013年7月2日;所需时间:120分钟题序一二三四
2、五总分得分评卷人注:请在答题卷上答题。一、判断题(本大题共10题,每题1分,共10分)1、C程序设计中定义的变量名可以是大写,也可以是小写。2、在C程序设计中,表示逻辑"真"值是1。3、在C程序设计中,要求对所用到的变量必须先定义、后使用。4、关系表达式a=b>c等价于a==b>c。5、if(n)和if(n!=0)不等价。6、若有宏定义:#define M(x,y,z) x*y+z,则宏引用M(2+3,4+5,6+7)通过宏展开后的表达式应为(2+3)*(4+5)+6+7。7、do......while循环语句至少要执行一次循环体。8、定义数
3、组写成intn=10,a[n];,定义正确。9、设有int a;char b[5]="abcd";则a=strlen(b);执行后a的值为5。10、函数的形参可以写作f(int*p),而实参不可以写作f(int*p)。二、单选题(本大题共10题,每题2分,共20分)11、在C程序设计中,下列优先级最低的是。A.&&B.%C.>=D.=12、若变量均已正确定义并赋值,以下合法的C语言赋值语句是。A.x=y==5;B.x=n%2.5;C.x+n=1;D.y=5=4+1;13、除“!”以外,以下运算符优先顺序的描述中正确的是。A.关系运算符<算术运
4、算符<赋值运算符<逻辑与运算符B.逻辑运算符<关系运算符<算术运算符<赋值运算符C.赋值运算符<逻辑与运算符<关系运算符<算术运算符D.算术运算符<关系运算符<赋值运算符<逻辑与运算符14、已有定义:intx=1,y=2,z=3;,则表达式z>y-1&&z的值是_____。2012-2013学年《C程序设计基础与实验》期末试卷第7页共7页浙江大学城市学院A.3B.2C.1D.01、如定义chara[80],*p=a;,以下错误的输入是。A.scanf("%s",a);B.scanf("%s",&a);C.scanf("%s",*p);D.sc
5、anf("%s",&a[0]);2、下列程序段输出的结果是。intx=3,y=0;if(x<2)if(x<1)y=x+1;elsey=x+2;printf("%d",y);A.0B.4C.5D.33、设intk=10;,以下while循环执行k=k-1;的次数是。while(k%10!=0)k=k-1;A.执行10次B.执行1次C.一次也不执行D.无限循环4、请选择不正确的赋值或赋初值的方式是。A、charstr[]="string";B、char*str="string";C、char*str;str="string";D、charstr[
6、10];str="string";5、下列程序段的输出结果是。char*st[]={"abcd","efgh","ijkl","mnop"},**p=st;p=p+2;printf("%s",*p+1);A.cdB.fghC.jklD.出错6、以下对结构体变量stu1中成员age的非法引用是。structstudent{intage;intnum;}stu1,*p=&stu1;A.stu1.ageB.student.ageC.p->ageD.(*p).age一、程序填空题(每题2分,共20分)1)、程序功能是统计学生成绩,输入一个正整数n,再
7、输入n个学生的百分制成绩,统计各等级成绩的个数。成绩等级分为五级,分别为A(90-100)、B(80-89)、C(70-79)、D(60-69)和E(0-59)。请选择填空。21intmain(void){inti,mark,n;intna,nb,nc,nd,ne;scanf("%d",&n);2012-2013学年《C程序设计基础与实验》期末试卷第7页共7页浙江大学城市学院na=nb=nc=nd=ne=0;for(i=1;i<=n;i++){scanf("%d",&mark);22(mark>=90&&mark<=100)na++;else
8、if(mark>=80)nb++;elseif(mark>=70)nc++;elseif(mark>=60)nd++;23ne++;}printf("%d%d%d%