C语言期末试题A卷答案
- 格式:doc
- 大小:66.50 KB
- 文档页数:8
第1页 共6页
„„„„„○„„„„„密„„„„„○„„„„„封„„„„„○„„„„„线„„„„„○„„„„
考试科目:C 语言程序设计
试卷适用专业(班): 生
学年度/第1学期 考试时间 月 日 节
题号 一 二 三 四 总计
分值 30 20
24 26
100
得分
阅卷人
一、 填空题(每空2分,共15分)
1. C语言中标识符只能由字母、数字和下划线三种字符
组成,且必须以 或 开头。
2. 假设int 型变量a 的值为2,则表达式a*=a+a的
值是 。
3.‘g’在内存中占 个字节,“g”在内存中
占 个字节。
4. 已知i=3,执行语句“j=i++;”后,j的值是 ,
i的值是 。
5. 若有“int a[2][2]={{1,2},{3}};”,则a[0][1]
的值是 。
6.已知float a=123.456;语句printf(“% .2f”,a)的
输出结果为 。
第2页 共6页
7. 若有int a=3,b=4,c=5;则表达式!(a>b)&&!c||1的值 。
8. 已知char str[]=“hello!”,则strlen(str)的值为 。
9. C语言中数组元素的下标最小值为 。
10.C语言的基本数据类型有: , , 。
二、选择题(每题2分,共20分)
1. C语言程序的基本单位是( )
A.程序行 B.字符 C.函数 D.语句
2. 在C语言中,下列运算符的操作数必须是int类型的运算符是( )
A.% B. += C./ D. *
3. 设a=1,b=2,则语句“printf(“%d”,a
A. 1 B. 2 C. 3 D. 4
4. 设有程序段如下:
int k=10;
while( k>=10 )
k=k+1;
则下面叙述正确的是( )
A.循环体执行10次 B. 循环是死循环
C.循环体一次也不执行 D. 循环体执行一次
5. 以下程序运行的结果是( )
main()
{ char a[7]=“abcdef”;
printf(“%c”,a[5]);
}
A.e B.f C.\0 D.无结果
第3页 共6页
6. 以下叙述正确的是( )
A. main函数必须出现在程序开头
B. 在C语言中,一行上只能写一条语句
C. 一个C程序是由一个或多个函数构成
D. 在C 程序中,ABC和abc是两个相同的变量
7. 在下面的语句中,能对一维数组正确赋初值的语句是( )
A. int a[5]={0,1,2,3,4,5};
B. char a[]={'0','1','2','3'};
C. char a={‘A’,‘B’,‘C’};
D. int a[5]=“01234” ;
8.C语言中,简单变量作为实参时,它和对应的形参之间的数据传递方式是( )
A.单向值传递 B.地址传递
C.相互传递 D.由用户指定传递方式
9. 与“for(表达式1;;表达式3)”等价的为( )
A. for(表达式1;0;表达式3)
B. for(表达式1;1;表达式3)
C. for(表达式1;表达式1;表达式3)
D. for(表达式1;表达式3;表达式3)
10. 若有int a[4][5];则对a数组元素的正确引用是( )
A.a[2][5] B.a[2,3]
C.a[1+1][0] D.a(2)(2)
第4页 共6页
三、写出下列程序运行结果(每题6分,共24分)
1. 下面程序的输出结果是:
#define f(x) x*x
main( )
{ int i;
i=f(4)/f(2+2);
printf(“i=%d\n”,i);
}
2. 下面程序的输出结果是:
max(int x,int y)
{int z;
z=x>y?x:y;
return z;
}
main()
{int a=10,b=8,m;
m=max(a,b);
printf(“%d”,m);}
}
3. 下面程序的输出结果是:
main( )
{ int a[]={1,2,3,4,5,6,7,8};
int *p=a+5,*q=NULL;
*q=*(p+2);
printf(“%d %d\n” , *p, *q );
}
第5页 共6页
4.下面程序的输出结果是:
main()
{ int arr[10],i,k=0;
for(i=0;i<10;i++)
arr[i]=i;
for(i=1;i<4;i++)
k+=arr[i];
printf(“%d\n”,k);}
四、编程题(共26分)
1. 编程判断输入的一个正整数是否既是3又是7的整数倍。若是,则输出 YES,否则输出NO。(8分)
第6页 共6页
2.编程计算1到正整数n之间的偶数之和。(8分)
3.找出有10个元素的整型数组中最小元素的值并输出。(10分)
第7页 共6页
C 语言程序设计答案(A卷)
一、填空题
1、字母、下划线 2、8
3、4 ,5 4、3,4
5、2 6、123.45
7、1 8、6
9、0 10、整型(int),实型(float),字符型(char)
二、选择题
1、C 2、A 3、A 4、B 5、B
6、C 7、B 8、A 9、B 10、C
三、写出下列程序运行结果
1、i=14
2、10
3、6 8
4、6
四、程序设计题
1、main()
{int n;
scanf(“%d”,&n);
if(n%3==0&&n%7==)
printf(“YES”);
else
printf(“NO”);}
第8页 共6页
2、 main( )
{ int i ,n, sum=0 ;
scanf(“%d”,&n);
for(i=2;i<=n;i+=2)
sum=sum+i;
printf(“%d”,sum);
}
3、
3、main()
{int a[10];
int i,max;
for(i=0;i<10;i++)
scanf(“%d”,&a[i]);
max=a[0];
for(i=1;i<10;i++)
if(max>a[i])
max=a[i];
printf(“max=%d”,max);