1. 以下程序运行后的输出结果是 。
main()
{ int i=5, j=0;
do
{ j=j+i;
i--;
}while(i>2);
printf(“%d\n”,j); }
2. 设有以下程序:
main()
{ int n1,n2;
scanf(“%d”,&n2);
while(n2!=0)
{ n1=n2%10;
n2=n2/10;
printf(“%d”,n1); } }
程序运行后,如果从键盘上输入1234;则输出结果为 。
3. 设有以下结构类型说明和变量定义,则变量a在内存所占字节数是 。
Struct stud
{ char num[10];
int s[2];
} a,*p;
4. 以下程序运行后的输出结果是 。
main()
{ char s[ ]=“98765”,*p;
for ( p=s ; *p ; p++)
printf(“%c”,*p); }
5. 以下程序运行后的输出结果是 。
main()
{ int p=30;
printf("%d\n",(p/3>0 ? p/10 : p%3));}
6. 以下程序运行后的输出结果是 。
main()
{ int a=2,b=-1,c=2;
if(a ) if(b<0) c=0;
else c++;
printf(“%d\n”,c); }
7. 以下程序运行后的输出结果是 。
main()
{ int i,m=0,n=0,k=0;
for(i=9; i<=11;i++)
switch(i/10)
{ case 0: m++; n++; break;
case 10: n++; break;
default: k++; n++; }
printf("%d %d %d\n",m,n,k);}
8. 以下程序的输出结果是 。
void fun( )
{ int a=0;
a+=2 ; printf( “%d” , a ) ;
}
main( )
{ int i;
for(i=0;i<3;i++) fun() ;
printf(“\n”); }
9. 以下程序的输出结果是 。
#define MAX(x,y) (x)>(y)?(x):(y)
main()
{ int a=5,b=2,c=3,d=3,t;
t=MAX(a+b,c+d);
printf(“%d\n”,t); }
10. 以下选项中合法的字符常量是( )
A、“B” B、 ‘\010’ C、68 D、 D
11. 设正x、y均为整型变量,且x=10 ,y=3,则以下语句的输出结果是( )
printf(”%d,%d\n”, x--,--y);
A、10,3 B、 9,3 C、 9,2 D、10,2
12. x、y、z被定义为int型变量,若从键盘给x、y、z输入数据,正确的输入语句是( )
A、 INPUT x、y、z; B、 scanf(“%d%d%d”,&x,&y,&z);
C、 scanf(“%d%d%d”,x,y,z); D、 read(“%d%d%d”,&x,&y,&z);
13. 阅读以下程序:
main()
{ int x;
scanf(“%d”,&x);
if(x--<5) printf(“%d”,x);
else printf(“%d”,x++);
}
程序运行后,如果从键盘上输人5,则输出结果是( )
A、3 B、4 C、5 D、 6
14. t为int类型,进人下面的循环之前,t的值为0
while( t=l )
{ …… }
则以下叙述中正确的是( )
A、 循环控制表达式的值为0 B、 循环控制表达式的值为1
C、循环控制表达式不合法 D、 以上说法都不对
15. 如下程序的功能是将字符串str2连接到串str1后面
main()
{ char str1[40]=”chinese ”,str2[10]=”boy”;
int i=0,j=0;
while (str1[i]!=’\0’) i++;
while (str2[j] !=’\0’)
str1[i]=’\0’;
puts(str1);
}
16上面程序中空白处应填( )
A、str1[i]=str2[j]; B、str1[i++]=str2[j] ;
C、str1[i++]=str2[j++] ; D、 str1[++i]=str2[++j] ;
17. 若有说明:int i, j=2,*p=&i;,则能完成i=j赋值功能的语句是( )
A、 i=*p; B、 i=**p; C、i=&j; D、*p=*&j;
18. 以下定义语句中,错误的是( )
A、int a[]={1,2}; B、char *a[3];
C、char s[10]=”test”; D、 int n=5,a[n];