for(i=0;i<4;i++)printf(
return0;
“%d,〞,a[0][i]);
}
A.6,2,1,1,
B.6,4,3,2,
C.1,1,2,6,
D.
2,3,4,6,
19、假设有说明:
inta[3][4]={0};那么下面正确的表达是〔
A.只有元素a[0][0]可得到初值0
〕。
B.此说明语句不正确
C.数组a中各元素都可得到初值,但其值不一定为0
D.数组a中每个元素均可得到初值0
20、设有数组定义:
chararray[]=“china〞,那么数组array所占的空
间为〔〕。
A.4个字节B.5个字节C.6个字节D.7个字节
21、当执行下面的程序时,假设输入ABC,那么运行结果是〔〕。
#include
#include
intmain()
{charss[10]=“1,2,3,4,5〞;
gets(ss);
strcat(ss,“6789〞);
printf(“n%s〞,ss);
}
D.ABC,3,4,5
22、为了判断两个字符串
str1和
str2是否相等,应当使用〔
〕。
A.if(str1==str2)B.if(str1=str2)
C.if(strcmp(str1,str2))D.if(strcmp(str1,str2)==0)
23、以下程序的运行结果是〔〕。
#include
voidmain()
{chararr[2][4];
strcpy(arr[0],〞you〞);
strcpy(arr[1],〞me〞);
arr[0][3]=‘&’;
printf(“n%s〞,arr);
}
A.you&me
24、以下程序段的运行结果是〔
printf(“n%d〞,strlen(
〕。
“ATS〞));
A.11B.10C.9D.8
25、当执行下面的程序时,假设输入ABC,那么运行结果是〔〕。
#include
#include
intmain()
{charss[10]=“1,2,3,4,5〞;
gets(ss);
strcat(ss,“6789〞);
printf(“n%s〞,ss);
}
D.ABC,3,4,5
二、填空题
1.以下程序的运行结果是。
#include
intmain()
{inta=2,b=8;
while(b--<0)
b-=a;
a++;
printf(“a=%d,b=%dn〞,a,b);
return0;
}
2.下面程序的运行结果为:
main()
{inta=10,y=0;
do
{a+=2;y+=a;
if(y>50)break;
}while(a<14);
printf(“a=%d,y=%dn〞,a,y);
}
3.从键盘输入12345-1回车,那么下面程序运行的结果是:
main()
{intn,k=0;do
{scanf(“%d〞,&n);k+=n;
}while(n!
=-1);
printf(“k=%d,n=%d〞,k,n);
}
4.下面程序的运行结果为:
main()
{inti,j,s=0;
for(i=1,j=5;i
s+=i*10+j;
printf(n%d“〞,s);
}
5.下面程序的运行结果是
main()
{
inti=10,s=0;
for(;--i;)
if(i%3==0)
s+=i;
s++;
printf(ns=%d“〞,s);
}
6.下面程序的运行结果是
main()
{inta=2,n=5,s;
s=a;
for(;--n;)
s=s*10+a;
printf(“%d〞,s);
}
7.下面的程序运行时,循环体语句“a++〞运行的次数为:
main()
{inti,j,a=0;
for(i=0;i<2;i++)
for(j=4,j>=0;j--)
a++;
}
8.下面的程序运行后,a的值为:
main()
{inti,j,a=0;for(i=0;i<2;i++)a++;
for(j=4,j>=0;j--)a++;
}
9.下面程序的运行结果为:
inti=1,s=3;
do{
s+=i++;
if(s%7==0)continue;
else++i;
}while(s<15);
printf(“,i);%d〞
10.当运行以下程序时,从键盘输入China#回车,那么下面程序的运
行结果是:
#include“〞
main()
{intv1=0,v2=0;charc;
while((c=getchar())!
=’#’)
{switch(c)
{case‘a’:
case‘h’:
default:
v1++;case‘o’:
v2++;
}
}
printf(“%d,%dn〞,v1,v2);
}
11、以下程序假设输入AabD↙,运行结果是:
。
#include
intmain()
{chars[80];
inti=0;
gets(s);
while(s[i]!
=0’)‘
{if(s[i]<=‘z’&&s[i]>=‘a’)
s[i]=‘z’-s[i]+’;a’
i++;
}
puts(s);
return0;
}
12、以下程序假设输入748915↙,运行结果是:
。
#include
intmain()
{inta[6],i,j,k,m;for(i=0;i<6;i++)scanf(“%d〞,&a[i]);for(i=5;i>=0;i--){k=a[5];
for(j=4;j>=0;j--)a[j+1]=a[j];a[0]=k;
}
for(m=0;m<6;m++)printf(“%d“,a[m]);
printf(n“〞);
return0;
}
13、以下程序的运行结果是。
#include
intmain()
{inta[4][4]={{1,2,3,4},{5,6,7,8},{11,12,13,14},{15,16,17,18}};inti=0,j=0,s=0;
while(i++<4)
{if(i==2||i==4)continue;
j=0;
do
{s+=a[i][j];j++;
}while(j<4);
}
printf(“n%d〞,s);return0;
}
14、以下程序的运行结果是。
#include
intmain()
{intb[3][3]={0,1,2,0,1,2,0,1,2},i,j,t=1;
for(i=0;i<3;i++)
for(j=i;j<=1;j++)
t+=b[i][b[j][i]];
printf(“%d\n〞,t);
return0;
}
15、下面程序运行后的运行结果是。
#include
intmain()
{chars[]=“12134211〞;
intv1=0,v2=0,v3=0,v4=0,k;
for(k=0;s[k];k++)
switch(s[k])
{default:
v4++;case'1':
v1++;case'3':
v3++;case'2':
v2++;
}
printf(“v1=%d,v2=%d,v3=%d,v4=%dn〞,v1,v2,v3,v4);return0;
}
三、编程题
1.求1-2+3-4++99-100。
2.计算1---100以内的所有含2的数的和。
3.输入10个数,按照由小到大的顺序输出。