二.写出下列程序的运行结果(每题3分,共15分)
1.#include “stdio.h”
main()
{
int i;
for (i=1;i<=5;i++)
{ if (i%2) printf(“*”);
else continue ;
printf(“#”);
}
printf(“$\n”);
}
2. main()
{
int i;
void function(void);
for (i=0;i<3;i++)
function();
}
void function(void)
{
int i=1,j=1;
static int k=1;
i++;j++;k++;
printf(“%d,%d,%d”,i,j,k);
}
3. float x=1.0,y=2.0,z;
main()
{
double fun(void);
z=fun();
printf(“%f,%f,%f\n”,x,y,z);
}
double fun(void)
{
int y,z;
x=y=z=3.0;
return(x+y+z);
}
4.main()
{
int i=1,k=0;
while (i--) k=k+k;
printf(“k=%d\n”,k);
}
5.main()
{
int i,sum;
i=1;
for(sum=1;i<=5;i++,sum--)
sum*=sum;
printf(“%d”,sum);
}
三 编程(共59分)
1.设有一个字符串“This is a computer” ,请编程求字符“i”首次出现的位置。(8分)
2. 试编程求3*3二维数组中最大元素及其所在的行、列位置。(12分)
3.编写程序,计算并输出下面级数在求和过程中第一次出现和数大于999时的奇数项部分和OS2。(其中^表示幂运算)
1*2-2*3+3*4-4*5+……+(-1)^(n-1)*n*(n+1)+ ……(13分)
4.有一张由9个学生每人8个数据组成的二维数据表。编写程序,要求将学生的总成绩按降序(由大到小)排列,计算并输出总分第二名学生的平均成绩。(13分)
姓名 学号 年龄 政治 语文 数学 计算机 体育 总分
李明 1 19 81 89 99 98 87
张力 2 16 89 90 95 80 90
王英 3 17 91 77 88 95 78
赵锐 4 18 79 84 95 93 96
周密 5 15 95 92 98 99 93
吴川 6 17 78 88 85 86 80
孙康 7 14 91 85 94 82 88
郑重 8 15 90 92 94 90 95
胡琴 9 16 75 85 87 94 90
5.已知在正文文件da1.dat中,每个记录只有两项数据,第一项为一整数表示学生的学号,第二项为形如xx.x的一个实数,试统计计算并向文件t2.dat输出60分以上(含60分)的人数占总人数的比例R。(13分)