有时候,数组元素也可以作为函数实参
例子:有两个数组a和b,各有10个元素,将它们对应的逐个的比较(即a[0]与b[0]比,a[1]与b[1]比...)。如果a数组中的元素大于b数组中的相应元素的数目多于b数组中元素大于a数组中元素的数目(例如:a[i]>b[i]6次,b[i]>a[i]3次,其中i为每次不同的值),则认为a数组大于b数组,并分别统计出两个数组相对应元素大于,等于,小于的次数。
#include "stdafx.h" #include <Strsafe.h> #include <string.h> int _tmain(int argc, _TCHAR* argv[]) { int large(int x,int y); int a[10],b[10],i,n=0,m=0,k=0; printf("输入数组a:"); for (i=0;i<10;i++) { scanf_s("%d",&a[i]); } printf("\n"); printf("输入数组b:"); for(i=0;i<10;i++) { scanf_s("%d",&b[i]); } for (i=0;i<10;i++) { if(large(a[i],b[i])==1) { n=n+1; } else if(large(a[i],b[i])==0) { m=m+1; } else { k=k+1; } } printf("a[i]>b[i] %d 次\na[i]=b[i] %d 次\na[i]<b[i] %d 次\n",n,m,k); if (n>k) { printf("数组a大于数组b\n"); } else if (n<k) { printf("数组a小于数组b\n"); } else { printf("数组a等于数组b"); } getchar(); getchar(); return 0; } int large(int x,int y) { int flag; if(x>y) { flag=1; } else if (x<y) { flag=-1; } else { flag=0; } return flag; }