C语言期末考试题含答案
《C语言程序设计》期末试卷
一、单项选择题(10x2’=20’)
1、以下叙述正确的是( )
A)C语言的源程序不必通过编译就可以直接运行。
B)C语言中的每条可执行语句最终都将被转换成二进制的机器指令。
C)C语言源程序经编译形成的二进制代码可以直接运行。
D)C语言中的函数不可以单独进行编译。
2、一个C语言的源程序中( )
A)必须有一个主函数 B)可能有多个主函数
C)必须有除主函数外其它函数D)可以没有主函数
3、以下不能定义为用户标识符的是( )
A)scanfB)VoidC)_3comD)int
4、若以下选项中的变量已正确定义,则正确的赋值语句是( )
A)x1=26.8%3;B)1+2=x2;C)x3=0x12;D)x4=1+2=3;
5、设有定义:float a=2,b=4,h=3;以下C语言表达式中与代数式的计算结果不相符的是( )
A)(a+b)*h/2B)(1/2)*(a+b)*hC)(a+b)*h*1/2D)h/2*(a+b)
6、C语言中用于结构化程序设计的3种基本结构是( )
A)顺序结构、选择结构、循环结构
B)if、switch、break
C)for、while、do-while
D)if、for、continue
7.在(x)语句中的x与下面条件表达式等价的是
A) x!=0 B) x==1 C) x!=1 D) x==0
8、有以下程序:
#include
void main(){
int i=1,j=1,k=2;
if( (j++||k++)&&i++ )
printf(“%d,%d,%d\n”,i,j,k);}
执行后的输出结果是( )
A)1,1,2B)2,2,1C)2,2,2D)2,2,3
9、有以下程序:
#include
void main(){
int i,s=0;
for(i=1;i<10;i+=2)
s+=i+1;
printf(“%d\n”,s);}
程序执行后的输出结果是( )
A)自然数1~9的累加和B)自然数1~10的累加和
C)自然数1~9中奇数之和D)自然数1~10中偶数之和
10、有以下函数定义:
void fun(int n,double x){……}
若以下选项中的变量都已经正确定义并赋值,则对函数fun的正确调用语句是( )
A)fun(int y,double m); B)k=fun(10,12.5);
C)fun(x,n); D)void fun(n,x);
二、填空题(10x2’=20’)
11、C语言描述“x和y都大于或等于z”的表达式是: 。
12、函数定义时涉及的基本要素是: 、 、 。
13、C语言可以用来实现循环的结构化语句是: 、 、 。
14、判断整型变量a即是5又是7的整数倍的C语言表达式是: 。
15、 若x和n都是int型变量,且x和n的初值都是6,则计算表达式x+=n++后,x的值为: ,n的值为: 。
三、写出下列程序的运行结果(3x5’ = 15’)
16、程序1
#include
void main() {
int a=12,b=12;
printf(“%d,%d\n”,--a,++b); }
程序执行后的输出结果是:
17、程序2
#include
void main() {
int a=5,b=4,c=3,d=2;
if(a>b>c)
printf(“%d\n”,d);
else if((c-1>=d)==1)
printf(“%d\n”,d+1);
else
printf(“%d\n”,d+2);
}
程序执行后的输出结果是:
18、程序3
#include
void main()
{
int x=0,y=5,z=3;
while(z-->0&&++x<5)
y=y-1;
printf(“%d,%d,%d\n”,x,y,z);
}
程序执行后的输出结果是:
四、编程题(3x15’ = 45’)
19、编写一个程序。实现输入一个小写字母,程序输出