admin 管理员组文章数量: 1086019
2024年8月27日发(作者:ubuntu命令行删除文件夹)
“C程序设计及实验”试题卷
注意:答题内容必须写在答题卷上,写在本试题卷上无效
一.单项选择题(每题1分,共10分)
1. 下列运算符中,优先级最低的是_____。
A.<< B.!= C.&& D.=
2. 以下选项中不正确的整型常量是_____。
A.0xa B.010L C.10 D.1.0
3. 表达式 !(x>0||y>0) 等价于_____。
A.!(x>0)&&!(y>0) B.!x>0&&!y>0 C.!x>0||!y>0 D.!(x>0)||!(y>0)
4. 表达式______的值不是0。
A.1/2 B.!’0’ C.!EOF D.NULL
5. 若 x 是浮点型变量,表达式 (x=10/4) 的值是_____ 。
A.2.5 B.2.0 C.3 D.2
6. 若变量已正确定义并赋值,表达式______不正确。
A.a&b B.a^b C.&&x D.a, b
7. 对于变量定义 int a[10], *p=a;,表达式______是不正确的。
A.a[9] B.p[5] C.*p++ D.a++
8. 不正确的赋值或赋初值的方式是______。
A.char str[10]; str="string"; B.char str[ ]="string";
C.char *p="string"; D.char *p; p="string";
9. 设程序中不再定义和声明变量,写出在函数fun中可以使用的所有变量______。
#include
void fun(int x)
{ static int y;
……
return;
}
int z;
void main( )
{ int a,b;
fun(a);
……
}
A.x, y B.x, y, z C. a,b,y,z D.a,b,x,y,z
10. 对于变量定义 int p[5], *a[5];,表达式______是正确的。
A.p=a B.p[0]=a C.*(a+1)=p D.a[0]=2
二、填空题(每题2分,共30分)
1. 数组定义为 int a[2][3][4],则数组a 中有_____个数组元素。
2002-2003学年春季学期“C程序设计及实验”试题卷 第 1 页(共8页)
2. 计算下列分段函数的条件表达式是______。
1 x>0
y= 0 x=0
-1 x<0
3. 表达式 1<10<5 的值是______。
4. 表达式 ~(10<<1)&4的值是______。
5. 表达式sizeof(“hello”)的值是______。
6. 下列程序段的输出结果是_____。
int k, s;
for(k=1, s=0; k<10; k++){
if (k%2==0) continue;
s += k;
}
printf("k=%d s=%d", k, s);
7. 下列程序段的输出结果是_____。
#define MM(x,y) (x*y)
printf("%d", MM(2+3,15));
8. 下列程序段的输出结果是_____。
int k=1, s=0;
switch (k) {
case 1: s+=10;
case 2: s+=20; break;
default: s+=3;
}
printf("k=%d s=%d", k, s);
9. 下列程序的输出结果是_____。
# include
int f( )
{ static int k;
return ++k;
}
void main( )
{ int k;
for(k=0;k<3;k++)
printf("%d#", f( ));
}
10. 下列程序的输出结果是_____。
f (int x)
{
if(x<=1) return 1;
2002-2003学年春季学期“C程序设计及实验”试题卷 第 2 页(共8页)
else return f(x-1)+f(x-2);
}
void main( )
{ printf("%d", f(4));
}
11. 下列程序段的输出结果是_____。
int k=1, j=2, *p, *q, *t;
p=&k; q=&j;
t=p; p=q; q=t;
printf("%d, %d",*p, k);
12. 下列程序段的输出结果是_____。
int c[ ]={10, 30, 5};
int *pc;
for(pc=c; pc printf("%d#", *pc); 13. 下列程序段的输出结果是_____。 char *st[ ]={"ONE","TWO","FOUR","K"}; printf("%s, %cn", *(st+2), **st+1); 14. 下列程序的输出结果是_____。 #include void p(int *x,int y) { ++ *x; y=y+2; } void main() { int x=0, y=3; p(&y, y); printf("%d, %d", x, y); } 15. 用typedef定义一个10个元素的字符指针数组类型CP。 三、程序阅读题(每题5分,共30分) 1. 下列程序的输出结果是_______。 #include void main( ) { int k, x, s, t; x=3; s=0; t=x; for(k=1; k<=3; k++){ 2002-2003学年春季学期“C程序设计及实验”试题卷 第 3 页(共8页) t=t*10+x; s=s+t; printf("%d#", s); } } 2. 输入7 3 0 3 0 3 1 2 9 7 6 0 <回车>后,下列程序的输出结果是_______。 #include void main( ) { int j, k, sub, x; int a[5]; for(j=1; j<=2; j++){ for(k=0; k<5; k++) scanf(“%d”, &a[k]); scanf(“%d”, &x); sub=-1; for(k=0; k<5; k++) if(a[k]==x) sub=k; printf("%d#", sub); } } 3. 下列程序的输出结果是_______。 #include void main( ) { long number, wt, x; x=number=10230; wt=1; while(x!=0){ wt=wt*10; x=x/10; } wt=wt/10; while(number!=0){ printf("%d#", number/wt); number=number%wt; wt=wt/10; } 2002-2003学年春季学期“C程序设计及实验”试题卷 第 4 页(共8页) } 4. 输入3 9 8 6 5 3 7 1 2 4 2 1 2 3 4<回车>后,下列程序的输出结果是_______。 #include "stdio.h" void main( ) { int flag,i,j,k,col,n,ri,a[6][6]; for(ri=1; ri<=2; ri++){ scanf("%d",&n); for(i=0; i for(j=0; j scanf("%d",&a[i][j]); flag=0;
版权声明:本文标题:C语言程序设计试题第五套-试卷 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.roclinux.cn/p/1724720674a818696.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论