#include?<stdio.h>
#include<stdlib.h>
int?zsum(int?score[],int?len){
????int?sum=0;
????printf("%d,",score);
????for(int?i=0;i<?len?;?i++){
????????sum+=?score;
????}
????printf("總成績?yōu)?d",sum);
????return?sum;
}
float?avg(int?score[],int?len){
??int?sum?=??zsum(score,len);
??int?num?=?len;
??float?avg;
??avg?=?sum/num;
??printf("平均成績?yōu)?f",avg);
??return?avg;
}
int?max(int?score[],int?len){
????int?max=score[0];
????for(int?i=1;i<?len?;?i++){
????????if(score>max){
????????????max?=?score;
????????}
????}
?????printf("最大值為%d",max);
????return?max;
}
int?min(int?score[],int?len){
????int?min=score[0];
????for(int?i=1;i<?len?;?i++){
????????if(score<min){
????????????min?=?score;
????????}
????}
?????printf("最小值為%d",min);
????return?min;
}
int?*zsort(int?score[],int?len){
??int?*b?=?(int?*)malloc(len*sizeof(int));//定一個int型的指針b,并申請N*sizeof(int)個字節(jié)的存儲空間,即N*4個字節(jié)
??//將數(shù)組a的值賦值給b
??for(int?i=0;i<len;i++){
????????b=score;
??}
??for(int?i=0;i<len?;i++){
??????for(int?j=i;j<len;j++){
??????????if(b<b[j]){
????????????int?temp?=?b;
?????????????b?=?b[j];
?????????????b[j]?=?temp;
??????????}
??????}
??}
??return?b;
}
int?main()
{
????int?score[10]={67,98,75,63,82,79,81,91,66,84};
????int?len?=?sizeof(score)/sizeof(score[0]);?//獲取數(shù)組的長度,必須和數(shù)組的定義在同一個方法
????int?*b=?zsort(score,len);?//返回一個倒序的數(shù)組,不要再原數(shù)組操作
????max(score,len);?//最大值
????zsum(score,len);?//求和?,注意方法名,不能為sum?,?因為是關(guān)鍵字,已經(jīng)被系統(tǒng)使用了
????min(score,len);?//最小值
????avg(score,len);?//平均值
????return?0;
}
C語言數(shù)組的最大值,倒序,平均值等方法分享
doubleyong
2019-10-12 16:20:00