资源描述:
《2007─2008 学年 第 1 期《c语言程序设计》课程试卷(b卷)》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、2007─2008学年第1学期《C语言程序设计》课程试卷(B卷)专业:年级:考试方式:闭卷学分:3.5考试时间:120分钟学号标准答案……………………………………..题号一二三四五六七八总分线得分姓名阅卷人得分一、选择题(每小题2分,共26分)班级1.以下合法的常量是(D)。A‘basic’B-e8C02xD“a”………………..…………………..封2.以下选项中不是C语句的是(C)。A{i=10;printf(“%d”,i);Bmax=m>n?m:nCa=8,c=18Da=;3.以下程序段中不能根
2、据x的值正确地计算出符号函数值,并赋值给变量y的是(C)。专业Aif(x>0)y=1;By=0;elseif(x==0)y=0;if(x>0)y=1;elsey=-1;elseif(x<0)y=-1;Cy=0;Dif(x>=0)if(x>=0)if(x>0)y=1;………………………………………if(x>0)y=1;elsey=0;密elsey=-1;elsey=-1;4.若a,b,c1,c2,x,y均是整型变量,正确的switch语句是(D)。Aswitch(a+b);Bswitch(a*a+b*b)
3、{case1:y=a+b;break;{case3:case0:y=a-b;break;case1:y=a+b;break;院(系、部)}case3:y=b-a;break;}CswitchaDswitch(a-b){casec1:y=a-b;break;{default:y=a*b;break;casec2:x=a*d;break;case3:case4:x=a+b;break;B1长江大学试卷…………….…………………………….default:x=a+b;}case10:case11:y=a-b;b
4、reak;}5.有以下程序段:intn=0,p;do{scanf(“%d”,&p);n++;}while(p!=12345&&n<3);此处do-while循环的结束条件是(B)。Ap的值不等于12345并且n的值小于3Bp的值不等于12345并且n的值大于3Cp的值不等于12345或者n的值小于3Dp的值不等于12345或者n的值大于36.下列程序中,while循环的循环次数是(D)。main(){inti=0;while(i<10){if(i<1)continue;if(i==5)break;i++
5、;}A1B10C6D死循环,不能确定次数7.以下对一维数组a的正确定义是(D)。Ainta(10);Bintn=10,a[n];Cintn;D#defineSIZE108以下能对一维数组a进行正确初始化的语句是(D)。Ainta[10]=(0,0,0,0);Binta[10]={};Cinta[]={0};Dinta[10]={10*1};9.以下说法中正确的是(C)。AC语言程序总是从第一个函数开始执行B在C语言程序中,要调用的函数必须在main()函数中定义CC语言程序总是从main()函数开始执行
6、DC语言程序中的main()函数必须放在程序的开始部分10.以下叙述不正确的是(D)。A函数之外定义的变量称外部变量,外部变量就是全局变量B在一个函数中既可以使用本函数中的变量,又可以使用外部变量C外部变量定义和外部变量声明的含义不同D若在同意源文件中,外部变量与局部变量通名,则在局部变量的作用范围内,外部变量不起作用11.程序中头文件type1.h的内容为#defineN5#defineM1N*3程序如下:#include“type1.h”B2#defineM2N*2main(){inti;i=M1/
7、M2;printf(“%d”,i);}程序输出结果是(C)。A1B1.5C6D3012.设int*p,i;以下正确的语句是(C)。A*p=10;Bi=p;Cp=&i;Dp=2*p+1;13.设有语句:inta[10]={0,1,2,3,4,5,6,7,8,9},*p=a;以下对数组a中的数组元素的不正确引用是(D)。Aa[p-a]B*(&a[i])Cp[i]D*(&(a+1))二、填空题(每小题2分,共24分)1.C语言中,系统在每一个字符串的结尾自动加一个字符串结束标志,既___’ ’_____
8、_,系统据此判断字符串是否结束。2.格式字符__s____和__c______分别用来输出字符串和单个字符。3.下列程序的输出结果是:x=___20____,y=___0____,t=__0_____。main(){intx=10,y=20,t=0;if(x>y)t=x;x=y;y=t;printf(“x=%d,y=%d,t=%d”,x,y,t);}4.有下列程序段:s=1.0;for(k=1;k<=10;k++)s=s+1.0/(k*(k