/函数的功能:如果flag==0,则函数实现对数组a的前m个元素进行降序排列, //如果flag!=0,则对数组a的前m个元素进行升序排列.#include<stdio.h>int main(){void sortp(int a[],int m,int flag); int a[10],m=6,i=0,flag; printf("please input numbers:\n"); for(i=0;i<10;i++) scanf("%d",&a[10]); printf("flag is:"); scanf("%d",&flag); sortp(a,m,flag); printf("the numbers is:\n"); for(i=0;i<m;i++) printf("%d\n",a[i]); return 0;}void sortp(int a[],int m,int flag){int i,j,t; if(flag==0) {for(i=0;i<m-1;i++) {for(j=i+1;j<m;j++) if(a[i]<a[j]) t=a[j]; a[j]=a[i]; a[i]=t;} printf("降序排列为:\n"); } if(flag!=0) {for(i=0;i<m-1;i++) {for(j=i+1;j<m;j++) if(a[i]>a[j]) t=a[j]; a[j]=a[i]; a[i]=t;} printf("升序排列为:\n"); }}
#include <stdio.h>
int main()
{
void sortp(int a[], int m, int flag);
int a[10], m = 6, i = 0, flag;
printf("please input numbers:\n");
for (i = 0; i < 10; i++)
scanf("%d", &a[i]); // 10 ===> i
printf("flag is:");
scanf("%d", &flag);
sortp(a, m, flag);
printf("the numbers is:\n");
for (i = 0; i < m; i++)
printf("%d\n", a[i]);
return 0;
}
void sortp(int a[], int m, int flag)
{
int i, j, t;
if (flag == 0)
{
for (i = 0; i < m - 1; i++)
{
for (j = i + 1; j < m; j++)
if (a[i] < a[j])
{ // 加{}
t = a[j];
a[j] = a[i];
a[i] = t;
}
}
printf("降序排列为:\n");
}
if (flag != 0)
{
for (i = 0; i < m - 1; i++)
{
for (j = i + 1; j < m; j++)
if (a[i] > a[j])
{ // 加{}
t = a[j];
a[j] = a[i];
a[i] = t;
}
}
printf("升序排列为:\n");
}
}
麻烦用代码块格式化一下吧,实在看不清