- 8.4
输入某班学生某门课的成绩(最多不超过40人,具体人数有用户键盘输入),用函数编程统计不及格人数。
#include <stdio.h>
int main()
{
int i,a[40],n,count=0;
printf("请输入学生人数:\n");
scanf("%d,&n");
printf("请输入各学生成绩:\n");
for(i=1;i<=n;i++)
{
scanf("%d,&a[i]");
if(a[i]<60)
count++;
}
printf("不及格人数有:%d\n",count);
return 0;
}
#include<stdio.h>
#define N 10
void GetValue(int score[]);
int FindMax(int score[]);
int FindMin(int score[]);
void SwapArr(int score[]);
int main()
{
int score[N],i;
GetValue(score);
SwapArr(score);
for(i = 0; i < N ; i++)
{
printf("%d ",score[i]);
}
return 0;
}
void GetValue(int score[])
{
int i;
for(i = 0; i< N; i++)
{
printf("please input number: ");
scanf("%d",&score[i]);
}
}
int FindMax(int score[])
{
int i,max,max_dex=0;
max = score[0];
for(i = 1; i< N ;i++)
{
if(score[i] > max)
{
max = score[i];
max_dex = i;
}
}
return max_dex;
}
int FindMin(int score[])
{
int i,min,min_dex=0;
min = score[0];
for(i = 1; i< N ;i++)
{
if(score[i] < min)
{
min = score[i];
min_dex = i;
}
}
return min_dex;
}
void SwapArr(int score[])
{
int temp,min_dex,max_dex;
min_dex = FindMin(score);
max_dex = FindMax(score);
temp = score[min_dex];
score[min_dex] = score[max_dex];
score[max_dex] = temp;
}
#include <stdio.h>
#define N 40
void Readscore(int feedback[]);
void DataSort(int feedback[]);
int FindMode(int feedback[]);
int main()
{
int feedback[N],mode;
Readscore(feedback);
DataSort(feedback);
mode=FindMode(feedback);
printf("Mode is %d",mode);
return 0;
}
void Readscore(int feedback[])
{
int i;
for(i=0;i<N;i++)
{
printf("Int put feedback:");
scanf("%d",&feedback[i]);
}
}
void DataSort(int feedback[])
{
int i,j,temp;
for(i=0;i<N-1;i++)
{
for(j=0;j<N;j++)
{
if(feedback[j]>feedback[i])
{
temp=feedback[i];
feedback[i]=feedback[j];
feedback[j]=temp;
}
}
}
}
int FindMode(int feedback[])
{
int mode;
mode=(feedback[N/2-1]+feedback[N/2])/2;
return mode;
}