for(i=0;i<4;i++)printf(“%d,”,a[0][i]);
return0;
}
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(“%s\n”,ss);
}
A.ABCB.ABC6789C.123456789D.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(“%s\n”,arr);
}
A.you&meB.youC.meD.err
24、以下程序段的运行结果是()。
printf(“%d\n”,strlen(“ATS\n012\1\\”));
A.11B.10C.9D.8
25、当执行下面的程序时,若输入ABC,则运行结果是()。
#include
#include
intmain()
{charss[10]=“1,2,3,4,5”;
gets(ss);
strcat(ss,“6789”);
printf(“%s\n”,ss);
}
A.ABCB.ABC6789
C.123456789D.ABC,3,4,5
二、填空题
1. 以下程序的运行结果是。
#include
intmain()
{inta=2,b=8;
while(b--<0)
b-=a;
a++;
printf(“a=%d,b=%d\n”,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=%d\n”,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;is+=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(“%d”,i);
10.当运行以下程序时,从键盘输入China#回车,则下面程序的运行结果是:
#include“stdio.h”
main()
{intv1=0,v2=0;
charc;
while((c=getchar())!
=’#’)
{switch(c)
{case‘a’:
case‘h’:
default:
v1++;
case‘o’:
v2++;
}
}
printf(“%d,%d\n”,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’+’a’-s[i];
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(“%d\n”,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=%d\n”,v1,v2,v3,v4);
return0;
}
三、编程题
1. 求1-2+3-4+…+99-100。
2.计算1---100以内的所有含2的数的和。
3.输入10个数,按照由小到大的顺序输出。