int maxValue=a[0], minValue=a[0], maxPos=0, minPos=0; int i, temp;
for (i=1; i if (a[i] > maxValue) { maxValue = a[i]; maxPos = i; } else if (a[i] < minValue) { minValue = a[i]; minPos = i; } } temp = a[maxPos]; a[maxPos] = a[minPos]; a[minPos] = temp; } main() { int a[ARRSIZE],i; printf(\ for (i=0; i MaxMinExchang(a, ARRSIZE); printf(\for (i=0;i 5. 写一函数,能对给定的一个二维数组(3×3)进行转置(即行列互换)。 #include { void convert(int array[][3]); int i,j; printf(\ for (i=0;i scanf(\ printf(\ for (i=0;i printf(\ printf(\ } convert(array); printf(\ for (i=0;i printf(\ printf(\ } } void convert(int array[][3]) {int i,j,t; for (i=0;i array[i][j]=array[j][i]; array[j][i]=t; } } 6. 写一函数,能用“起泡法”对输入的10个字符按由小到大顺序排序。 #include {void sort(char str[]); int i,flag; for (flag=1;flag==1;) {printf(\ scanf(\ if (strlen(str)>N) printf(\ else flag=0; } sort(str); printf(\ for (i=0;i printf(\} void sort(char str[]) {int i,j; char t; for(j=0;j for (i=0;(i str[i]=str[i+1]; str[i+1]=t; } } 7. 编写一个函数,由实参传来一个字符串,统计此字符串中字母、数字、空格和其他字符的个数。 #include int letter,digit,space,others; void main() {void count(char str[]); char text[80]; printf(\ gets(text); printf(\ puts(text); letter=0; digit=0; space=0; others=0; count(text); printf(\} void count(char str[]) {int i; for (i=0;str[i]!='\\0';i++) if ((str[i]>='a'&& str[i]<='z')||(str[i]>='A' && str[i]<='Z')) letter++; else if (str[i]>='0' && str [i]<='9') digit++; else if (str[i]==32) space++; else others++; } 8. 编写程序输出3~10000内的可逆素数。可逆素数是指:一个素数将其各位数字的顺序倒过来构成的反序数也是素数。如157和751均为素数,它们是可逆素数。要求调用两个子函数实现。 #include int s=0; while(a>0) { s=10*s+a; a/=10; } return s; } int prime(int a) { int i; for(i=2;i<=(int)sqrt(a);i++) if(a%i==0) return 0; return 1; } main() { int i; for(i=3;i<10000;i++) if(prime(i)) if(prime(invert(i))) printf(\printf(\} 9. 编写一个函数,实现将一个十进制数转换成八进制数。 #include