#include<stdio.h>
void input();
void sort();
void output();
int n,i,a[20];
void main()
{
input();
output();
sort();
output();
}
void input()
{
puts("Input n(0<n<11):\n");
scanf("%d",&n);
printf("Input %d integers:\n",n);
for(i=1;i<=n;i++)
scanf("%d",&a[i]);
}
void output()
{ printf("The %d integers are:\n",n);
for(i=1;i<=n;i++)
printf("%d ",a[i]);
putchar('\n');
}
void sort()
{
int t,j;
for(i=1;i<n;i++)
for(j=1;j<n-i;j++)
if(a[j]>a[j+1])
{
t=a[j];
a[j]=a[j+1];
a[j+1]=a[j];
}
}
sort函数有2处问题,已经改正,已经运行通过:
void sort()
{
int t,j;
for(i=1;i<n;i++)
for(j=1;j<=n-i;j++) //改动处
if(a[j]>a[j+1])
{
t=a[j];
a[j]=a[j+1];
a[j+1]=t; //改动处
}
}