C语言练习题2(分支结构 循环结构 数组 函数2009-2012二级真题 )
C语言练习题(二)
一 选择题
1.有以下程序
#include
void main()
{ int a;
canf(“%d”,&a);
if(a++<9) printf((“%d\n”,a);
else printf((“%d\n”,a--);
}
程序运行时键盘输入9,则输出的结是
A 10 B 11 C 9 D 8
有以下程序
#include
void main()
{
int s=0,n;
for (n=0;n<3;n++)
{switch(s)
{
case 0:
case 1:s+=1;
case 2:s+=2;break;
case 3:s+=3;
case 4:s+=4;
}
printf((“%d\n”,s);
}
}
程序运行后的结果是
A 1,2,4 B 1,3,6 C 3,10,14 D 3,6,10
若k是int类型变量,且有以下for语句
or(k= -1;k<0;k++) printf(“****\n”);
下面关于语句执行情况的叙述中正确的是
A循环体执行一次 B循环体执行两次
C循环体一次也不执行 D构成无限循环
有以下程序
#include
void main()
{char A,B,C;
B=’1’;C=’A’
for(A=0;A<6;A++)
{if(A%2) putchar(B+A);
lse putchar(C+A);
}
}
程序运行后输出的结果是
A 1B3D5F B ABCDFE C A2C4E6 D 123456
5.fun函数的功能是:通过键盘输入给x所指的整型数组所有元素赋值。在下列划线处应该填写的是
#include
#define N 5
void fun(int x[N])
{int m;
for(m=N-1;m>0;m--)
scanf(“%d\n”, );
}
A &x[++m] B &x[m+1] C x+(m++) D x+m
6.有以下函数
#include
#include
void main()
{ printf(“%d\n”,strlen(“ATS\n012\1”) );}
程序运行后的输出结果是
A 3 B 8 C 4 D 9
有以下函数
#include
void main()
{ char a[20],b[20],c[20];
scanf(”%s%s”,a,b);
get(c);
printf(”%s%s%s\n”,a,b,c);
}
程序运行时从第一行开始输入 this is a cat!,则输出结果是
A thisisacat! B this is a C thisis a cat! D thisisa cat!
有以下函数
#include
viod fun(char c)
{if(c >’x’) fun(c-1);
printf (“%c”,c);
}
void main()
{funz’);}
程序运行输出结果是
A xyz B wxyz C zyxw D zyx
、有以下函数
#include
viod func(int n)
{int i;
for(i=0;i<=n;i++) printf(“*”);
printf(“#”);
}
main()
{ func(3); printf(“????”); func(4); printf(“\n”); }
程序运行输出结果是
A ****#????***# B ***#????*****#
C **#????*****# D ****#????*****#
(1)有以下程序
#include
main()
{int a=1,b=0;
if(--a) b++;
else if(a=0)b+=2:
else b+=3:
printf("%d\n",b);
)
程序运行后的输出结果是( )。
A)0 B)1 C)2 D)3
(11)下列条件语句中,输出结果与其他语句不同的是( )。
A)if(a)printf("%d\-n",x); else