四、阅读分析题 (本大题共6小题,每小题5分,共30分)
30.写出下列程序的运行结果。
main()
{ int a=10,b=8,c;
c=a;
a=b;
b=c;
printf(″a=%d,b=%d\n″,a,b);
}
31.写出下面程序的功能;如果输入6和9,写出程序的输出结果。
main()
{ int a,b,x,y;
scanf(″%d%d″,&a,&b);
x=a*a+b*b;
if(x>100)
{y=x/100;printf(″%d″,y);}
else
printf(″%d″,a+b);
}
32.写出下面程序的功能及运行结果。
main()
{
int n=1,sum=0;
do{
sum=sum+n;
n+=2;
}while(n<100);
printf(″sum=%d\n″,sum);
}
33.写出下面程序的功能和运行结果。
int fun(int a[][4])
{ int i,j,k,tem
tem=a[0][0];
for(I=0;i<3;i++)
for(j=0;j<4;j++)
if(a[i][j]
return(tem);
}
main()
{ int b[3][4]={{1,3,-5,7},{2,4,-6,8},{10,20,-30,40}};
printf(″%d\n″,fun(b));
}
34.下列程序中字符串中各单词之间有一个空格,写出程序的输出结果。
#include
#include
main()
{ char str1[]=″How do you do″;
puts(str1);
strcpy(str1+str1en(str1)/2,″es she″);
printf(″%s\n″,str1);
}
35.写出下列程序的功能和运行结果。
#include
reverse (char *s)
{ char*t,ch;
for(t=s+strlen(s)-1;s
{ch=*s;*s=*t;*t=ch;}
}
main()
{ char*s1=″123456″;
reverse(s1);
printf(″%s\n″,s1);
}
五、编程题 (本大题共2小题,每小题12分,共24分)
36.编程求20至100之间素数的累加和并输出该累加和。
37.编程生成以下A、B两个数组(不得使用输入语句输入数据或对数组初始化),将两数组对应元素相加写入C数组中,最后并排输出A、B、C三个数组。