第1个回答 2011-01-15
#include<stdio.h> //链接标准头文件
#define N 100 //定义常量N并赋值为100
void main() //主函数入口
{ //表示主函数开始
int i; //定义整形变量i
double grade[N],sum,avg,min,max; //定义N维(N=100,也就是一维数组(长度是100)啦^^)sum为和,avg平均值,min最小值,max最大值
int minindex,maxindex; //minindex最小值索引,maxindex最大值索引
printf("输入100个数\n"); //在屏幕上显式“输入100个数”并且换行
for(i=0;i<N;i++) //开始for循环,从i=0,每次加1,直到i=99,共需循环100次
{ //循环体开始
scanf("%d",&grade[i]); //依次获取用户输入的整数值并存入数组grade中
} //循环结束
min=grade[0];
max=grade[0];
minindex=0;
maxindex=0;
for(i=0;i<N;i++) //开始外层for循环,从i=0,每次加1,直到i=99
{ //外层循环体开始
sum+=grade[i]; //累加求和
if(grade[i]<min) //如果grade[i]比min小,把该值赋给min,并记录索引
{
min=grade[i];
minindex=i;
}
if(grade[i]>max) //如果grade[i]比max大,把该值赋给max,并记录索引
{
max=grade[i];
maxindex=i;
}
} //结外层循环,完成排序
avg=sum/N;
printf("和为%lf:\n",&sum);
printf("平均为%lf:\n",&avg);
printf("最大值为%lf:\n",&max);
printf("最小值为%lf:\n",&min);
printf("最大值在第%d个:\n",&maxindex+1);
printf("最小值在第%d个:\n",&minindex+1);
printf("\n"); //输出换行到屏幕,看不到什么效果,可删掉
} //结束main()函数