#include<iostream>
#include<conio.h>
using namespace std;
int main()
{
int a, b, c[5], d;
cout << "enter any five number\n";
for(a=0; a<5; a++)
{
cin>>c[a];
}
for(a=0; a<5; a++)
{
for(b=++a; b<5; b++)
{
if(c[b] < c[a])
{
d = c[b];
c[b] = c[a];
c[a] = d;
}
}
}
cout << "\nhere is the entered numbers in order\n";
for(a=0; a<5; a++)
{
cout << c[a];
cout << endl;
}
getch();
return 3;
}
我正在检查这个程序,我希望程序按升序对数字进行排序,但我得到了错误的输出帮助。
答案 0 :(得分:1)
应该是a + 1
而不是++a
答案 1 :(得分:1)
for(a=0;a<5;a++)
和for(b=++a;..)
会导致a
两次递增。
您的意思是for(b=a+1;b<5;b++)
吗?
答案 2 :(得分:0)
for(a=0; a<5; a++)
{
for(b=++a; b<5; b++)
{
if(c[b] < c[a])
{
d = c[b];
c[b] = c[a];
c[a] = d;
}
}
}
这应该是
for(a=0; a<4; a++)
{
for(b=a+1; b<5; b++)
{
if(c[b] < c[a])
{
d = c[b];
c[b] = c[a];
c[a] = d;
}
}
}
答案 3 :(得分:0)
for(a=0; a<5-1; a++){
for(b=0; b<5-a-1; b++){
if(c[b] < c[a]){
d = c[b];
c[b] = c[a];
c[a] = d;
}
}
}