问题遇到的现象和发生背景 :已经给出了a[7]里的元素a[7]={36,24,15,9,86,50,66},又要求输入七个数字去升序排序
问题相关代码,请勿粘贴截图
#include<stdio.h>
int main()
{
int a[7]={36,24,15,9,86,50,66},i,j;
printf("output the 7 numbers:\n");
for(i=0;i<7;i++)
printf("%d ",a[i]);
printf("\n");
int temp;
for(i=1; i<=7-1; i++)
{
for(j=1; j<=7-i; j++)
{
if(a[j-1] > a[j])
{
temp = a[j-1];
a[j-1] = a[j];
a[j] = temp;
}
}
}
printf("the sorted numbers:\n");
for(i=0;i<7;i++)
printf("%d ",a[i]);
return 0;
}
}
运行结果及报错内容
— 预期输出 —— -3 4 46 52 86 96 125
—— 实际输出 ——
output the 7 numbers:
the sorted numbers:
-3 4 46 52 86 96 125
我的解答思路和尝试过的方法
for后接scanf("%d“,&a[i]);
会多出一个零,不知道为啥