28. 以下能对二维数组a进行正确初始化的语句是( )
A) int a[2][3]={0}; B) int a[][3]={{1,2},{0}};
C) int a[2][3]={{1,2},{3,4},{5,6}}; D) int a[][3]={1,2,3,4,5,6}; 29.以下程序的输出结果是( ) int fun( int n) { int s;
if(n= =1 || n= =2) s=2; else s=n++;
return s; } void main() {
printf(\}
A) 1 B) 2 C) 3 D) 4 30.以下程序的执行结果是( )
int fun(int x, int y) {
y = 2*x++; return y; }
void main( ) {
int a=1 , b=2, c=3; c = fun(a, b);
printf(\}
A) 1,2,3 B)3,2,1 C)1,2,2 D)2,2,2
二.填空题(每空2分,共24分)请将每空的正确答案写在答题卡1至10序号的
空格内。
1.在C语言中,格式化输入库函数为【 1 】,格式化输出函数为printf。 2.任何复杂的程序都可以由顺序、分支和【 2 】这三种基本结构组成。 3. C语言中用0表示假,用【 3 】表示真。
4.C语言中实现循环结构的控制语句有for语句、【 4 】语句和do-while语句。 5.若有定义int a[3][4], 假设a[0][0]是数组中第一个元素,则a[2][2]是数组中第【 5 】个元素。
5
6.从函数定义的角度看,函数可以分为标准库函数和【 6 】两种。
7.若a为整型变量,则表达式“(a=3*5,a+=2),a+5”的值为【 7 】. 8.当a=3,b=2,c=1时,表达式“f=a>b>c”的值是 【 8 】. 9. 以下程序判断输入的一个整数是否能被3整除,若能整除,输出“YES”,若不能整除,输出“NO”,将程序代码补充完整 #include
int k;
printf(\; scanf(\,&k); if 【 9 】
printf(\; else
printf(\;
}
10.下面程序的功能是将键盘输入的字符串str中所有'c'替换成'C',请将程序补充完整: #include
int i;
char str[80]; gets(【 10 】)
for(i=0; 【 11 】;i++) {
if(str[i] != 'c') continue; 【 12 】;
}
printf(\}
三. 编程题(第1小题6分,第2小题10分,共16分) 1.编程计算2+4+6+8+…+96+98+100的值。
2.从键盘输入10个数,编程实现将其中最大的数与最小的数位置对换后,再输出调整后的数组。
6
2005-2006下学期《C语言程序设计》期末考试答题卡
班级: 学号: 姓名: 成绩:
注意:1,请将答案写在答题卡相应位置,写在试卷上不得分; 2,请将姓名、班级、学号写在装订线内,否则视为无效; 得分 一 二 三 四 五 总分
一. 单选题(每题2分,共60分) 1 2 3 4 5 6 7 8 9 D B A C C B D D C 10 11 12 13 14 15 16 17 18 A,D,AD A C B D B C C C 19 20 21 22 23 24 25 26 27 D B A B B C C D B 28 29 30 B C C
二. 填空(每题2分,共24分) 1 scanf 2 循环 3 非0(或非零) 4 while 5 ·· 6 自定义函数 7 22 8 0(或零) 9 k %3 == 0(或 k%3) 10 str 11 i < 80 (或str[i] != ‘\\0’) 12 str[i] =’C ’ (或str[i] -= 32)
7
三. 编程题
1.编程计算2+4+6+8+…+96+98+100的值
void main ( ) {
int i, sum=0;
for (i=0 ; i<100 ;i+=2) sum+=i;
printf(“sum=%d\\n“ , sum); }
注:用while、do-while或goto都行,只要完成功能就可以。
2.从键盘输入10个数,编程实现将其中最大的数与最小的数位置对换后,再输出调整后的数组。 void main ( ) {
int a[10] , max=0 ,min=0 , i, t; for (i=0 ; i<10 ;i++) scanf (“%d”, &a[i]); for(i=0 ; i<10 ;i++) {
if ( a[max] < a[i]) max = i;
if( a[min] > a[i]) min =i ; }
t = a[min];
a[min] = a[max]; a[max] = t;
for (i=0 ; i <10 ;i++) printf(“%d “ , a[i]); }
8
相关推荐: