设k为整型变量,则下面while循环共执行( )次
k=2;
while(k!=0)printf("%d",k),
k--;
printf("\n");无限多
设P1和P2是指向同一个int型一维数组的指针变量,k为int型变量,
则不能正确执行的语句是k=*P1+*P2;设x,y,z,t均为int型变量,则执行以下语句后,t的值为( )
x=y=z=1;
t=++x||++y&&++z;不定值
设x.y.z和k都是int型变量,则执行表达式:x=(y=4,z=16,k=32)后,x
的值为( )4
设x=1, y=2, 执行表达式
(x>y)?x++:++y
以后x和y的值分别为( )。1和2
设x为int型变量,则执行以下语句后,x的值为( )
x=10; x=x+--x;10
设x为int型变量,则执行以下语句后,x的值为( )
x=10; x+=x-=x-x;10
设变量说明为
int a=2,b=3,c=7,d=10;
则表达式 d=a==b?++b:++C 的值是____。
10
设已定义k为int整型变量,则有下面while循环执行( )次
k=10;
while(k=0)k=k-1;执行10次设有 int x=11; 则表达式 (x++ * 1/3) 的值是3
设有 static char str[ ]="Beijing"; 则执行
printf("%d\n", strlen(strcpy(str, "China")));
后的输出结果为( )5
设有定义:long x=-123456L;,则以下能够正确输出变量x值的语句是printf(“
x=%d\n”,x);
设有如下程序段:
int x=2002, y=2003; printf("%d\n",(x,y));则以下叙述中正确的是输出语句中格式说明符的个数少于输出项的个数,不能正确输出
设有如下的变量定义:
int I =8,k ,a,b ;
unsigned long w=5; double x=1.42,y=5.2;
则以下符合C语言语法的表达式是( )a+=a-
=(b=4)*(a=3)
设有如下定义:
int (*ptr)();
则以下叙述中正确的是ptr是指向一维组数的指针变量
设有如下定义:
int a=1,b=2,c=3,d=4,m=2,n=2;
则执行表达式:(m=a>b)&&(n=c>d)后,n的值为( )1
设有数组定义: char array [ ]="China"; 则数组 array所占的空
间为 4个字节
设有说明语句:char a=’\72’;则变量a包含1个字符设有以下宏定义:
#define N 3
#define Y(n) ( (N+1)*n)
则执行语句:z=2 * (Y(4));后,z的值为 ( )出错
设正x、y均为整型变量,且x=10 y=3,则以下语句的输出结果是
printf("%d,%d\n",x--,--y);10,3
数字字符0的ASCII值为48,若有以下程序
main()
{
char a='1',b='2';
printf("%c,",b++);
printf("%d\n",b-a);
}
程序运行后的输出结果是
3,2
下列( )表达式不满足:当x的值为偶数时值为“真”,为奇
数时值为“假”。x%2==0
下列变量定义中合法的是short _a=1-.le-1;
下列程序的输出结果是
main()
{ char a[10]={9,8,7,6,5,4,3,2,1,0},*p=a+5;
printf("%d",*--p);
}非法
下列程序的输出结果是
main()
{ double d=3.2; int x,y;
x=1.2; y=(x+3.8)/5.0;
printf("%d \n", d*y);
}3
下列程序的运行结果是
#include
main()
{ int a=2,c=5;
printf("a=%d,b=%d\n",a,c); }a=%2,b=%5下列程序执行后的输出结果是
main()
{ int x='f'; printf("%c \n",'A'+(x-'a'+1)); }G
下列程序执行后的输出结果是(小数点后只写一位)
main()
{ double d; float f; long l; int i;
i=f=1=d=20/3;
printf("%d %ld %f %f \n", i,l,f,d);
} 6 6 6.0 6.0下列符号中可以作为函数名的是( )_sysf
下列关于C语言用户标识符的叙述中正确的是用户标识符中可以出现下划线和中划线(减号)
下列关于switch语句和break语句的结论中,只有( )是正确的break语句是switch语句的一部分
下列关于单目运算符++、--的叙述中正确的是它们的运算对象可以是任何变量和常量
下列函数定义中,会出现编译错误的是max(int
x,int y,int *z)
{ *z=x>y ? x:y; }
下列可作为C语言赋值语句的是( )x=3,y=5
下列条件语句中,功能与其他语句不同的是if(a)
printf("%d\n ",x); else printf("%d\n ",y)
下列选项中,不能用作标识符的是_1234_
下列选项中,合法的C语言关键字是VAR
下列语句中符合C语言语法的赋值语句是: ( )a=0x7bc=a7 ;
下面程序的输出结果是
main()
{ int a[ ]={1,2,3,4,5,6,7,8,9,0,},*p;
p=a;
printf("%d\n",*p+9);
}0下面的( )代表一个十六进制整数。'A'
下面能正确进行字符串赋值操作的语句是( )char
s[5]={"ABCDE F"};
下述标识符中,()是合法的用户标识符。A#C
选择出正确的说明语句( )int A[3.6];要求以下程序的功能是计算:s=1/10+1/9+1/8+...+1/2
main()
{ int n; float s;
s=1.0;
for(n=10;n>1;n--)
s=s+1/n;
printf("%6.4f\n",s);
}
程序运行后输出结果错误,导致错误结果的程序行是s=1.0;
一个C语言的程序是由一个主程序和若干个子程序组成
已定义ch为字符型变量,以下赋值语句中错误的是ch='\';已定义c为字符型变量,则下列语句中正确的是c='97';
已有定义:char a[]="xyz",b[]={'x','y','z'};,以下叙述中正确的是数组a和b的长度相同
已有定义:int i,a[10],*p;,则合法的赋值语句是p=100已知char c; 则下列语句中正确的是( ) c='a'
已知i、j、k为int型变量,若从键盘输入:1,2,3<回车>,使i的值为1、j的值为2、k的值为3,以下选项中正确的输入语句是scanf(“%2d% 2d%2d
”,&i,&j,&k) ;
已知大写字母A的ASCII码值是65,小写字母a的ASCII码是97,则用
八进制表示的字符常量‘\101’是字符A 已知定义:int b[]={1,2,3,4},y,*p=b;执行y=*p++后,y的值为(
)1
以下不能正确定义二维数组的选项是int
a[2][2]={{1} ,{2}}
以下不能正确进行字符串赋初值的语句是char
str[5]="good !";
以下程序的功能是:按顺序读入10名学生4门课程的成绩,计算出
每位学生的平均分并输出,程序如下:
main()
{ int n,k;
float score ,sum,ave;
sum=0.0;
for(n=1;n<=10;n++)
{ for(k=1;k<=4;k++)
{ scanf(“%f”,&score); sum+=score;}
ave=sum/4.0;
printf(“NO%d:%f\n”,n,ave);
}
}
上述程序运行后结果不正确,调试中发现有一条语句出现在程序中
的位置不正确。这条语句是 sum=0.0;以下程序的输出结果是
main()
{ int i, k, a[10], p[3];
k=5;
for (i=0;i<10;i++) a[i ]=i;
for (i=0;i<3;i++) p[i ]=a[i *(i+1)];
for (i=0;i<3;i++) k+=p[i] *2;
printf("%d\n",k);
}20
以下程序的输出结果是
fun(int x, int y, int z)
{ z=x*x+y*y; }
main()
{ int a=31;
fun(5,2,a);
printf("%d",a);
}0
以下程序的输出结果是
main()
{ char c='z';
printf("%c",c-25);
}a
以下程序的输出结果是
main()
{ int a[4][4]={{1,3,5},{2,4,6},{3,5,7}};
printf("%d%d%d%d\n",a[0][3],a[1][2],a[2][1],a[3][0]; )
}650
以下程序的输出结果是
main()
{ int a=3;
printf("%d\n",(a+a-=a*a) );
}-6
以下程序的输出结果是
main()
{ int i, a[10];
for(i=9;i>=0;i--) a[i]=10-i;
printf("%d%d%d",a[2],a[5],a[8]);
}258
以下程序的输出结果是
main()
{ int i, x[3][3]={1,2,3,4,5,6,7,8,9};
for(i=0;i<3;i++) printf("%d,",x[i][2-i]);
}1,5,9以下程序的输出结果是
main()
{ char cf[3][5]={"AAAA","BBB","CC"};
printf("\"%s\"\n",ch[1]);
}
"AAAA"以下程序的输出结果是
main()
{ int a=4,b=5,c=0,d;
d=!a&&!b||!c;
printf("%d\n",d);
}
1
以下程序的输出结果是
main()
{ int a=5,b=4,c=6,d;
printf("%d\n",d=a>b?(a>c?a:c):(b));
}
5
以下程序的输出结果是( )
main()
{int a=10,b=10;
printf("%d %d\n",--a,b--);
}10 10以下程序的输出结果是( )
main( )
{ int a=12,b=12;
printf("%d%d\n",--a,++b);
}10 10以下程序段的输出结果是
char s[]="\\141\141abc\t";
printf ("%d\n",strlen(s));9
以下程序段的输出结果是
int a=1234;
printf("%2d\n",a);12
以下程序输出结果是( )
main ()
{int m=5;
if (m>5 ) printf ("%d\n",m);
else printf ("%d\n",m--);
}7
以下程序运行后,输出结果是( )
main( )
{ char *s="abcde";
s+=2;
print("%ld \n",s);
}cde
以下程序执行后sum的值是
min()
{ int i , sum;
for(i=1;i<6;i++) sum+=i;
printf("%d\n",sum);
}15
以下的for循环 ( )
for(x=0,y=0; (y!=123)&&(x<4); x + + );是无限循环
以下定义语句中,错误的是 int
a[]={1,2};
以下定义语句中正确的是char
a='A'b='B'
以下对i, j, k进行说明并赋值的方法中, 只有( )是错误的。 int
i=j=k=1;
以下非法的赋值语句是n=(i=2,++i);以下函数值的类型是
fun ( float x )
{ float y;
y= 3*x-4;
return y;
}int
以下合法的赋值语句是x=y=100
以下能正确定义二维数组的是int a[][3]
以下能正确定义数组并正确赋初值的语句是int
N=5,b[N][N];
以下能正确定义一维数组的选项是int
a[5]={0,1,2, 3,4,5}
以下能正确定义一维数组的选项是
int num[]
以下述叙正确的是在C程序中,main函数必须位于程序的最前面
以下数组定义中不正确的是 int
a[2][3];
以下说法中正确的是( )以下说法中正确的是( )
以下所列的C语言常量中,错误的是0xFF
以下所列的各函数首部中,正确的是 void
play(var
:Integer,var b:Integer)
以下叙述正确的是 C语言比其他语言高级
以下叙述中不正确的是( )在不同的函数中可以使用相同名字的变量
以下叙述中正确的是C程序中注释部分可以出现在程序中任意合适的地方
以下选项中,非法的字符常量是 '\t'
以下选项中,与k=n++完全等价的表达式是k=n,n=n+1以下选项中不合法的用户标识符是()。abc.c
以下选项中非法的表达式是0<=x<100
以下选项中合法的用户标识符是long
用C语言编写的代码程序可立即执行有定义语句:int x, y;,若要通过scanf("%d,%d",&x,&y);语句使
变量x得到数值11,变量y得到数值12,下面四组输入形式中,错误
的是11 12<回车>
#define N 2
#define M N+1
#define NUM 2*M+1
#main()
{ int i;
for(i=1;i<=NUM;i++)printf(“%d\n”,i);
}
该程序中的for循环执行的次数是5
有如下程序
main( )
{ float x=2.0,y;
if(x<0.0) y=0.0;
else if(x<10.0) y=1.0/x;
else y=1.0;
printf(“%f\n”,y);
}
该程序的输出结果是0
有如下程序
main( )
{ int i,sum;
for(i=1;i<=3;sum++) sum+=i;
printf(“%d\n”,sum);
}
该程序的执行结果是6
有如下程序
main( )
{ int n=9;
while(n>6) {n--;printf(“%d”,n);}
}
该程序段的输出结果是987
有如下程序
main( )
{ int x=1,a=0,b=0;
switch(x){
case 0: b++;
case 1: a++;
case 2: a++;b++;
}
printf(“a=%d,b=%d\n”,a,b);
}
该程序的输出结果是 a=2,b=1
main( )
{ int x=23;
do
{ printf(“%d”,x--);}
while(!x);
}
该程序的执行结果是321有如下程序
main( )
{ int y=3,x=3,z=1;
printf(“%d %d\n”,(++x,y++),z+2);
}
运行该程序的输出结果是 3 4有如下程序段
int *p,a=10,b=1;
p=&a; a=*p+b;
执行该程序段后,a的值为12
有如下程序段
int a=14,b=15,x;
char c=’A’;
x=(a&&b)&&(c<’B’);
执行该程序段后,x的值为
ture 有以下程序
#define P 3
void F(int x){return(P*x*x);}
main()
{printf("%d\n",F(3+5));}
程序运行后的输出结果是
192有以下程序
main()
{
char a[7]="a0\0a0\0"; int i,j;
i=sizeof(a); j=strlen(a);
printf("%d %d\n",i,j);
}
程序运行后的输出结果是
2 2
main()
{
int i=1,j=2,k=3;
if(i++==1&&(++j==3||k++==3))
printf("%d %d %d\n",i,j,k);
}
程序运行后的输出结果是
1 2 3
有以下程序
main()
{
int a,b,d=25;
a=d/10%9;b=a&&(-1);
printf("%d,%d\n",a,b);
}
程序运行后的输出结果是
6,1
有以下程序
main()
{
int m,n,p;
scanf("m=%dn=%dp=%d",&m,&n,&p);
printf("%d%d%d\n",m,n,p);
}
若想从键盘上输入数据,使变量m中的值为123,n中的值为456,p中的
值为789,则正确的输入是m=123n=456p=
789
有以下程序 A
main()
{
int m=12,n=34;
printf("%d%d",m++,++n); printf("%d%d\n",n++,++m);
}
程序运行后的输出结果是
12353514
有以下程序 main() { int m[][3]={1,4,7,2,5,8,3,6,9}; int
i,j,k=2; for(i=0;i<3;i++) { printf("%d ",m[k][i]); } } 执
行后输出结果是 4 5 6
有以下程序
#include
main()
{ char *p=“abcde\0fghjik\0”;
printf(“%d\n”,strlen(p));
}
程序运行后的输出结果是12
#include
#define F(X,Y) (X)*(Y)
main()
{ int a=3, b=4;
printf("%d\n", F(a++, b++));
}
程序运行后的输出结果是
12有以下程序
#include
main()
{ printf("%d\n",NULL); }
程序运行后的输出结果是0
有以下程序
fun(int a, int b)
{ if(a>b) return(a);
else return(b);
}
main()
{ int x=3, y=8, z=6, r;
r=fun(fun(x,y), 2*z);
printf("%d\n", r);
}
程序运行后的输出结果是3
有以下程序
int f(int n)
{ if (n==1) return 1;
else return f(n-1)+1;
}
main()
{ int i,j=0;
for(i=1;i<3;i++) j+=f(i);
printf(“%d\n”,j);
}
程序运行后的输出结果是4
有以下程序
main()
{ char a[ ]={‘a’,‘b’,‘c’,‘d’, ‘e’, ‘f’, ‘g’,
‘h’,‘\0’}; int i,j;
i=sizeof(a); j=strlen(a);
printf(“%d,%d\b”i,j);
}
程序运行后的输出结果是9,9
main()
{ char s[]="\n123\\";
printf("%d,%d\n",strlen(s),sizeof(s));
}
执行后输出结果是赋初值的字符
串有错
有以下程序
main()
{ int a; char c=10;
float f=100.0; double x;
a=f/=c*=(x=6.5);
printf("%d %d %3.1f %3.1f\n",a,c,f,x);
}
程序运行后的输出结果是
1 65 1 6.5有以下程序
main()
{ int a=1,b=2,m=0,n=0,k;
k=(n=b>a)||(m=a
printf("%d,%d\n",k,m);
}
程序运行后的输出结果是
0,0
有以下程序
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);
}
执行后输出的结果是2
有以下程序
main()
{ int aa[4][4]={{1,2,3,4},{5,6,7,8},{3,9,10,2},{4,2,9,6}};
int i,s=0
for(i=0;i<4;i++) s+=aa[i][1];
printf(“%d\n”,s);
}
程序运行后的输出结果是11