救救我吧= =
#include <stdio.h>
int totalScore(int score[], int N)
{
int i;
int sum = 0;
for (i = 0; i < N; i++)
{
sum += score[i];
}
return sum;
}
int maxScore(int score[], int N)
{
int j;
int max = score[0];
for (j = 0; j < N - 1; j++)
{
if (score[j + 1] > max)
max = score[j + 1];
}
return max;
}
int minScore(int score[], int N)
{
int k;
int min = score[0];
for (k = 0; k < N - 1; k++)
{
if (score[k + 1] < min)
min = score[k + 1];
}
return min;
}
int averageScore(int score[], int N)
{
int Sum = *totalScore;
int average = Sum / N;
return average;
}
int descendingScore(int score[], int N)
{
int m, temp;
for (m = 0; m < N - 1; m++)
{
if (score[m + 1] < score[m])
{
temp = score[m];
score[m] = score[m + 1];
score[m + 1] = temp;
printf("%d\n", score[m]);
}
else
{
printf("%d\n",score[m]);
}
}
return 0;
}
int main()
{
int score[10] = { 67,98,75,63,82,79,81,91,66,84 };
totalScore(score, 10);
maxScore(score, 10);
minScore(score, 10);
averageScore(score, 10);
descendingScore(score, 10);
getchar();
return 0;
}
2019-04-01
寫的代碼過于散;
不需要定義太多函數(shù),定義一個函數(shù)就夠了,
在定義的內(nèi)部函數(shù)里面求出最大值,最小值,降序與,
定義整個數(shù)組作為參數(shù)處理(在數(shù)組第二章以寫有),
在定義的函數(shù)里面我們定義整型的最大值、最小值、均值、sum的變量名,
先考慮遍歷降序排序,然后我們可以求出最大值在第一位,最小值在最后一位,
而總值可以用for循環(huán)遍歷加到之前定義的sum變量名里面,
而均值我們可以用總值/10,都可以在定義的內(nèi)部函數(shù)里輸出,在主函數(shù)中我們只調(diào)用一維數(shù)組到自定義的函數(shù)里,自定義函數(shù)中直接輸出就好
總結:寫代碼前先考慮好,代碼的可讀性,靈活性,可修改性
代碼如下:
#include <stdio.h>
int L(int s[]) //處理整個數(shù)組
{
? ? int max=0;
? ? int min=0;
? ? int sum=0;
? ? int v=0;
? ? int i,j,t;
? ? for(i=0;i<10;i++)
? ? {
? ? ? ? t=1; ? //此不做贅述
? ? ? ? for(j=0;j<10-1-i;j++)
? ? ? ? {
? ? ? ? ? ? if(s[j]<s[j+1]) ?//降序 < 從大到小
? ? ? ? ? ? {
? ? ? ? ? ? ? ? s[j]+=s[j+1];
? ? ? ? ? ? ? ? s[j+1]=s[j]-s[j+1]; ?//比較調(diào)換位置
? ? ? ? ? ? ? ? s[j]-=s[j+1];
? ? ? ? ? ? ? ? t=0; ?//此不做贅述
? ? ? ? ? ? }
? ? ? ? }
? ? ? ? if(t)break;//此不做贅述
? ? }
? ? for(i=0;i<10;i++)
? ? {
? ? ? ? sum+=s[i]; ? //循環(huán)求出總值
? ? }
? ? printf("sum=%d\n",sum);
? ? max=s[0];
? ? min=s[9];
? ? v=sum/10;
? ? printf("max=%d\n",max);
? ? printf("min=%d\n",min);
? ? printf("v=%d\n",v);
? ? for(i=0;i<10;i++)
? ? {
? ? ? ? printf("%d ",s[i]);
? ? }
}
int main()
{
? ? int score[]={67,98,75,63,82,79,81,91,66,84};
? ? L(score); ? //調(diào)用函數(shù)
? ? return 0;
}