源程序:
#include <stdio.h>
void main()
{
int array[10];
int *pointer;
int i,j,t,max,min,sum=0;
double aver;
int num1=0,num2=0;
pointer=array; //指针指向数组,数组名表示数组的首地址
printf("请输入10个数:");
for(i=0;i<10;i++)
{
scanf("%d",pointer+i); //用指针循环输入10个数
sum=sum+array[i]; //sum是总分
}
aver=sum/10;
printf("\n平均分是:%.1f\n",aver); //冒泡排序
for(i=0;i<10;i++)
{
for(j=0;j<10-i-1;j++)
{
if(array[j]>array[j+1])
{
t=array[j];
array[j]=array[j+1];
array[j+1]=t; //二个数的交换
}
}
} //最高分,最低分
max=min=array[0];
for(i=1;i<10;i++)
{
if(max<array[i])
max=array[i];
if(min>array[i])
min=array[i];
}
printf("\n最高分是:%d, 最低分是:%d\n",max,min); printf("array[10]:");
for(i=0;i<10;i++)
printf("%5d",*(pointer+i));//用指针循环输出10个数 //计算及格人数,不及格人数
for(i=0;i<10;i++)
{
if(array[i]<60)
num1++; //num1表示不及格人数
else
num2++; //num2表示及格人数
}
printf("\n及格人数:%d, 不及格人数:%d\n",num2,num1);
printf("\n");
}
运行结果 :