7.设定义:char x, y, z; 从键盘给x、y、z输入数据,正确的输入语句是 b 。
a)input x y zb) scanf("%c%c%c",&x,&y,&z);
c) scanf("%c%c%c",x,y,zd) getchar(x,y,z)
8.设 a=6, b=5, c=8, d=7, m=0, n=2, 执行 (m=a>b) |n=c>d)后n的值为 b 。
a) 1b) 2c) 8d) 0
9.设有程序段。
int i=10;
doi--;
while(i==1);
则下面描述中正确的是 d 。
a) 循环共执行10次b) 循环是无限循环
c) 循环体语句一次也不执行 d) 循环体语句执行一次。
10.在执行int a[3][3]=;语句后,a[2][2]的值是 a
a) 0b)5c)6d) 2
11.以下程序的输出结果是 c
void main( )
float x=3, y=5;
printf(”x=%.2f,y=%.2f”, x, y);
a) x=%3.0,y=%5.0 b)x=3,y=5 c)x=3.00,y=5.00 d)x=%f,y=%f
12.在调用函数时,如果实参是简单变量,它与对应形参之间的数据传递方式是 b
a) 地址传递b)单向值传递
c) 由实参传给形参,再由形参传回实参 d)传递方式由用户指定。
13.以下程序的输出结果是 a
void main()
char s=
printf("%d,%d", sizeof(s), strlen(s));
a) 5,2b) 6,2c)5,4d) 5,5
14.若x是整型变量,p是指向整型数据的指针变量,下述表达正确的是 d
a) int x, *p; *p=xb) int x, *p; *p=&x;
c) int x, *p; p=xd) int x, *p; p=&x;
15.以下数组定义中不正确的是 a
a) int a[2]=,
c) int a[ ]
16.以下程序的输出结果是。
void main()
int x=10,y=10,i;
for(i=1;x>8;y=y+i)
x--;printf(“%d,%d ”,x,y);
a) 9,11 b) 9,12 c) 8,12d) 9,11 8,12
17.设有如下定义。
struct stu
int a ;
float b;
student;
则对student中a域的正确引用的是。
a) b) struct d)
18. 若有定义语句:int m=2, n=5 ; 则表达式m-=+n的值为。
a) 6b) -3c) -4d) 5
19.有如下说明int a[10]=,p=&a[8]; 则数值为9的表达式是
a) *pb) *p+8) c) p+1d)p+8
20..执行以下程序后,y的值是
void main()
int y=1,x,*p;
p=&a[4];
for(x=0;x<3;x++)
y-=*p-x);
printf(“%d”,y);
a) 1b) -9 c) -17d) -23
二、程序填空题(每空2分, 共20分)
1.下面函数用来求出两个整数之和,并通过形参传回两数相加之和,请填空。
int add(【1】 x, 【2】 y), i, *p;
for( i=0; i<5; i++)
printf(“%d”, a[i下标法。
printf(“”);
for(i=0;i<5;i++)
printf(“%d”, a+i地址法。
printf(“”);
for(【4p printf(“%d”, 5指针法。
3.下面程序是用递归法来计算ab,其中b为整型变量且b≥0,填空补充程序。
#include<>
float fun(float x, int y)
float f ;
if(y==0)
f=1;;else
f=【6return f;
void main()
float a,c;
int b;
scanf("%f,%d",【7
c=【8printf("a的b次幂=%f", c);
4.下面程序通过打擂台法找出十个数中的最大的那个数,填空补充程序。
int fun(int a,int n)
int max;
max=a[0];
for(i=0; i if(max9
return max;
void main( )
int i, m, a[10];
for(i=0;i<10:i++)
scanf(“%d”, 10
m=fun(a,10);
printf(“最大的数为:%d”,m);
三、阅读下列程序,写出运行结果(每小题5分,共25分)
#include <>
void main()
int i, x[3]=,sum=0;
for(i=0;i<3;i++)
sum +=x[i] *x[2-i];
printf("%d",sum);
程序运行后的输出结果是。
2.若执行以下程序时从键盘上输入3,7,1,则输出结果是。
void main( )
int a, b, c, t;
scanf("%d,%d,%d ",a,&b,&c);
if(a>b)
if(a>c)
if(b>c)
t=b; b=c; c=t;}
printf("%d,%d,%d",a,b,c);
3.void main()
int x=1,y;
switch(x)
case 1:
case 2: y=-x;
case 3: y=x*3;break;
case 4: y=4*x; break;
printf(“%d”,y);
则程序运行后的输出结果是。
#include<>
void main()
void swap(int *p1,int *p2);
int n1=7,n2=8,n3=1;
int *p1,*p2,*p3;
p1=&n1; p2=&n2; p3=&n3;
if(n1 swap(p1,p2);
if(n1swap(p1,p3);
if(n2swap(p2,p3);
printf(“%d,%d,%d”,n1,n2,n3);
C语言复习试卷
此复习题并非全是考题,请同学们结合期末的复习题库的题一并复习。一 单项选择。1 一个c语言程序开始和结束的位置必然是 主函数 2 c语言规定,必须用 main 作为主函数名。3 由c源程序文件编译而成的目标文件的扩展名为 obj 经过连接后成为 exe 文件。4 以下叙述不正确的是 a 在c程序中,...
c语言复习试卷A
广东工业大学华立学院考试试卷 a 课程名称 c语言程序设计。考试时间 2010年月日 一 选择题 每小题2分,共40分 1.以下正确的说法是 a a 实参可以是常量 变量或表达式。b 形参可以为任意类型。c 实参只能是常量d 形参可以是常量。2.d 是正确的字符常量。a c b abc 11 d 语...
c语言复习试卷A
广东工业大学华立学院考试试卷 a 课程名称 c语言程序设计。考试时间 2010年月日 一 选择题 每小题2分,共40分 1.以下正确的说法是 a a 实参可以是常量 变量或表达式。b 形参可以为任意类型。c 实参只能是常量d 形参可以是常量。2.d 是正确的字符常量。a c b abc 11 d 语...