1、打擂台算法
1 #include<stdio.h> 2 int main() 3 { 4 int max(int x,int y); 5 int a[10],m,n,i; 6 printf("enter 10 numbers:"); 7 for(i=0;i<10;i++) 8 scanf("%d",&a[i]); 9 printf("\n"); 10 for(i=0,m=a[0],n=0;i<10;i++) 11 { 12 if(max(m,a[i])>m) 13 {m=max(m,a[i]); 14 n=i; 15 } 16 } 17 printf("The largest number is %d\n is the%dth number\n",m,n+1); 18 } 19 int max(int x,int y) 20 { 21 return(x>y?x:y); 22 }
2、一维数组名做函数参数求平均值
1 #include<stdio.h> 2 int main() 3 { 4 float average(float array[10]); 5 float score[10],aver; 6 int i; 7 printf("input 10 scores:\n"); 8 for(i=0;i<10;i++) 9 scanf("%f",&score[i]); 10 printf("\n"); 11 aver=average(score); 12 printf("average is %5.2f\n",aver); 13 return 0; 14 } 15 float average(float array[10]) 16 { 17 int i; 18 float aver,sum=array[0]; 19 for(i=1;i<10;i++) 20 sum=sum+array[i]; 21 aver=sum/10; 22 return(aver); 23 }
3、用选择法排序
#include<stdio.h> int main() { void sort(int array[],int n); int a[10],i; printf("enter arry:\n"); for(i=0;i<10;i++) scanf("%d",&a[i]); sort(a,10); printf("the sort arry:\n"); for(i=0;i<10;i++) printf("%d ",a[i]); printf("\n"); return 0; } void sort(int arry[],int n) { int i,j,k,t; for(i=0;i<n-1;i++) {k=i; for(j=i+1;j<n;j++) if(arry[j]<arry[k]) k=j; t=arry[k];arry[k]=arry[i];arry[i]=t; } }
4、二维数组做形参时第一位大小省略,第二位不能省略
1 #include<stdio.h> 2 int main() 3 { 4 int max(int array[][4]); 5 int a[3][4]={{1,3,5,7},{2,4,6,8},{15,17,34,12}}; 6 printf("Max value is%d\n",max(a)); 7 return 0; 8 } 9 int max(int arry[][4]) 10 { 11 int i,j,max=arry[0][0]; 12 for(i=0;i<3;i++) 13 for(j=0;j<4;j++) 14 if(arry[i][j]>max) 15 max=arry[i][j]; 16 return max; 17 }
5、全局变量求最低分和最高分·
#include<stdio.h> float Max=0,Min=0; int main() { float average(float array[],int n); float ave,score[10]; int i; printf("please enter 10 scores:"); for(i=0;i<10;i++) scanf("%f",&score[i]); ave=average(score,10); printf("max=%6.2f\nmin=%6.2f\naverage=%6.2f\n",Max,Min,ave); return 0; } float average(float array[],int n) { int i; float aver,sum=array[0]; Max=Min=array[0]; for(i=1;i<n;i++) { if(array[i]>Max) Max=array[i]; else if(array[i]<Min) Min=array[i]; sum=sum+array[i]; } aver=sum/n; return(aver); }
原文:https://www.cnblogs.com/1998wdq/p/11366353.html