C语言 这个小程序 哪里错了呢?

2025-06-26 12:48:13
推荐回答(1个)
回答1:

#include
#include 
#define n 5
void side_rank(int a[]);

int main(void)
{
int side[n] = { 0 };
char loop = '\0';
do
{
int i;
printf("Please enter %d num:",5);
for(i = 0; i < n; i++)
scanf("%d", side[i]);
side_rank(side);
printf("Do you want to run again?(Y,YES  N,NO");
scanf("%c", &loop);
}
while (loop == 'Y' || loop == 'y');

}

void side_rank(int *a)
{
int i, j, k, s, z;
for (i = n - 1; i >0; i = k)
{
for (j = 0,k=0; j < i; j++)
{
if (*(a + j) > *(a + j + 1))
{
s = *(a + j);
*(a + j) = *(a + j + 1);
*(a + j + 1) = s;
k = j;
}
}
}
for (z = 0; z < n; z++)
{
printf("%5d", *(a + i));
}
}