资源描述
《C语言程序设计》期末试卷
一、单项选择题(10x7=20。
1、以下表达正确的选项是()C语言的源程序不必通过编译就可以直接运行。
A) C语言中的每条可执行语句最终都将被转换成二进制的机器指令。
B) C语言源程序经编译形成的二进制代码可以直接运行。
C) C语言中的函数不可以单独进行编译。
2、一个C语言的源程序中()A)必须有一个主函数B)可能有多个主函数
C)必须有除主函数外其它函数D)可以没有主函数3、以下不能定义为用户标识符的是()
A) scant B) Void C) _3com D) int4、假设以下选项中的变量已正施定义,那么正确的赋值语句是()
A) xl=26.8%3; B) l+2=x2; C) x3=0xl2; D) x4=l+2=3;5、设有定义:float a=2,b=4,h=3;以下C语言表达式中与代数式L(a + b)*/z的计
算结果不相符的是()(a+b)*h/2 B) (l/2)*(a+b)*h C) (a+b)*h*l/2 D) h/2*(a+b)
6、C语言中用于结构化程序设计的3种基本结构是()A)顺序结构、选择结构、循环结构
A) if> switch> breakfor> while> do-while
B) if、for、continue7.在while (!x)语句中的!x与下面条件表达式等价的是()
A) x!=0 B) x==l C) x!=l D) x==08、有以下程序: #include <stdio.h> void main(){
int i=l,j=l,k=2;
if( (j++11 k++)&&i++ )printf("%d,%d,%d\n〔ijk);}
执行后的输出结果是()A) 1,1,2 B) 2,2,1 C) 2,2,2 D) 2,2,3
9、有以下程序:
#include <stdio.h>void main(){
int i,s=0;
for(i=l;i<10;i+=2)s+=i+l;
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语言可以用来实现循环的结构化语句是:、、o 14、判断整型变量a即是5又是7的整数倍的C语言表达式是:o 15、假设x和n都是int型变量,且x和n的初值都是6,那么计算表达式x+=n++ 后,x的值为:, n的值为:o三、写出以下程序的运行结果(3x5=15。
16、程序1#include <stdio.h>
void main() {
int a=12,b=12;
printf(〃%d,%d\n〃,--a,++b);}程序执行后的输出结果是:
17、程序2#include <stdio.h>
void main() {
int a=5,b=4,c=3,d=2;
if(a>b>c)printf("%d\n〃,d);
else if((c-l>=d)==l)printf("%d\n〃,d+l);
elseprintf(zz%d\n,,,d+2);
)程序执行后的输出结果是:
18、程序3#include <stdio.h>
void main()(
int x=0,y=5,z=3;
while(z->0&&++x<5)y=y-i;
printf("%d,%d%d\n”,XMZ);程序执行后的输出结果是:
四、编程题(3x15'= 45')19、编写一个程序。实现输入一个小写字母,程序输出它对应的大写字母。(提 示:小写字母的ASCII码值比大些字母大32)
20、编写一个程序,计算100+101+102+...+300的值。
21、学生成绩(100分为总分值)与等级的对应关系为:
成绩(grade)
等级
90<=grade<=100
A
80<=grade<90
B
70<=grade<80
C
60<=grade<70
D
grade<60
E
请你编写一个程序,要求:输入学生成绩,输出学生成绩对应的等级。(提示: 使用 switch....case 语句)期末试题答案
1、
2、
3、
4、
5、
6、
7、
8、
9、
10、
11、
12、
13、
14、
15、
16、
17、
18、
19、
BA
DC
BA
DC
D
C
x>=z && y>=z
函数名、形式参数、函数体
while、 do-while、for
a%5==0 && a%7==0
12,7
11,13
3
3,2,-1
程序代码如下:
#include <stdio.h> void main()
char ch;
scanf("%c",&ch);
printf("%c\n",ch-32);20、程序代码如下:
#include <stdio.h>void main()
(
int i,sum=0;for (i=100;i<=300;i++) sum+=i;
printf("sum=%d\n",sum);)
21、程序代码如下:
#include <stdio.h>void main()
(
int grade;
scanf("%cT'&grade);
switch(grade/10)
(
case 10:
case 9:
printfC'AXn");break;
case 8:
printf("B\n");break;
case 7:
pnntf(,,C\nn);break;
case 6:
printf("D\n");break;
default:
printf("E\n");break;
))
期末试题答案备用卷1、B
2、A3、D
4、D5、B
6、A7、A
8、B9、B
10、A11、整型、实型、字符型
12、313、2,1
14、9,015> return
16、double17、7
18、219、2,1,1
20、程序代码:
#include <stdio.h>void main()
(
int a,b,c;
float pinjun;
scanf("%d%d%d"/&a,&b,&c);
pinjun = (a+b+c)3.0;
printf("%.2f\nn,pinjun);)
21、程序代码:
#include <stdio.h>void main()
(
int a;
scanf("%d",&a);
if(a<0)a=-a;
printf("%d\n",a);)
22、程序代码:
#include <stdio.h>void main()
(
float x,y;
scanf("%f",&x);
if(x<=0)y=3*x+5;
else if(x>0 && x<=l) y=x+5;
elsey=-2*x+8;
printf(”%.2f\rT,y);)
展开阅读全文