贺老师教学链接 C语言及程序设计提高 本课讲解
用数组元素作函数实参
#include <stdio.h> int gcd(int m,int n) { int r; while(r=m%n) { m=n; n=r; } return n; } int main() { int i; int a[8]= {26,1007,956,705,574,371,416,517}; int b[8]= {994,631,772,201,262,763,1000,781}; int c[8]; for(i=0; i<8; i++) c[i]=gcd(a[i],b[i]); //对应元素的公约数 for(i=0; i<8; i++) printf("%d ", c[i]); printf("\n"); return 0; }
#include <stdio.h> float average (float array[ ], int n) { int i; float aver, sum=array[0]; for (i=1; i<n; i++) sum=sum+array[i]; aver=sum/n; return aver; } int main() { float score[10]= {100,90,89,87,61,76,98,78,82,90}; float aver; aver=average(score,10); printf("aver=%.2f\n", aver); return 0; }
#include <stdio.h> int p(int a, int x[], int b, int y[], int n) { int i, s=0; for(i=0; i<n; i++) s+=a*x[i]+b*y[i]; return s; } int d[]= {2,3,5,4,9,10,8}; int v[]= {7,6,3,2,5,1,8,9,3,4}; int w[]= {1,2,3,4,5,6,7,8,9,10}; int main() { printf("s1=%d\n", p(1,d,2,v,8)); printf("s2=%d\n", p(3,v,4,w,10)); return 0; }
#include <stdio.h> void fun(int a) { a=a*10; } int main() { int b = 2; printf("%d\n", b); fun(b); printf("%d\n", b); return 0; }
#include <stdio.h> void fun(int a[]) { int i; for(i=0; i<2; i++) a[i]=a[i]*10; } int main() { int b[2]= {2,4}; printf("%d\t%d\n", b[0], b[1]); fun(b); printf("%d\t%d\n", b[0], b[1]); return 0; }
#include <stdio.h> #define N 10 void bubblesort(int a[]); int main( ) { int i,d[N]={3,5,9,1,3,6,-9,-7,10,12}; bubblesort(d); for(i=0; i<N; i++) printf("%d ", d[i]); return 0; } void bubblesort(int a[]) { int i,j,t; for (i=0; i<N-1; i++) for(j=0; j<N-i-1; j++) if (a[j]>a[j+1]) { t=a[j]; a[j]=a[j+1]; a[j+1]=t; } return; }
#include <stdio.h> void bubblesort(int [], int); int main( ) { int i,d[10]={3,5,9,1,3,6,-9,-7,10,12}; bubblesort(d,10); for(i=0; i<10; i++) printf("%d ", d[i]); return 0; } void bubblesort(int a[], int n) { int i,j,t; for (i=0; i<n-1; i++) for(j=0; j<n-i-1; j++) if (a[j]>a[j+1]) { t=a[j]; a[j]=a[j+1]; a[j+1]=t; } return; }