读书人

输入3个字符串,要求将字母按由小到大的

发布时间: 2012-02-11 09:51:35 作者: rapoo

输入3个字符串,要求将字母按由小到大的顺序输出 请问我的程序错在哪?
#include <iostream>
#include <cstring>
using namespace std;
int main()
{int i,j;
string temp;
string string[3];
cout < < "please input 3 strings: " < <endl;
for(i=0;i <3;i++)
cin> > string[3];
cout < <endl;
for(j=0;j <2;j++)
for(i=0;i <3-j;i++)
if(string[i]> string[i+1])
{temp=string[i];string[i]=string[i+1];string[i+1]=temp;}
cout < < "the sorted strings: " < <endl;
for(i=0;i <3;i++)
cout < <string[i] < < " ";
cout < <endl;
system( "pause ");
return 0;
}



[解决办法]
#include <iostream>
#include <cstring>
#include <string>
using namespace std;
int main()
{
int i,j;
string temp;
string string[3];
cout < < "please input 3 strings: " < <endl;
for(i=0;i <3;i++)
cin> > string[i];
cout < <endl;
for(j=0;j <2;j++)
for(i=0;i <2;i++)
if(string[i]> string[i+1])
{temp=string[i];string[i]=string[i+1];string[i+1]=temp;}
cout < < "the sorted strings: " < <endl;
for(i=0;i <3;i++)
cout < <string[i] < < " ";
cout < <endl;
system( "pause ");
return 0;
}
[解决办法]
#include <iostream>
#include <cstring>
using namespace std;
int main()
{int i,j;
string temp;
string string[3];
cout < < "please input 3 strings: " < <endl;
for(i=0;i <3;i++)
cin> > string[3];
cout < <endl;
for(j=1;j <3;j++) //for(j=0;j <2;j++)原改为 for(j=1;j <3;j++) ,原来的会益出
for(i=0;i <3-j;i++)
if(string[i]> string[i+1])
{temp=string[i];string[i]=string[i+1];string[i+1]=temp;}
cout < < "the sorted strings: " < <endl;
for(i=0;i <3;i++)
cout < <string[i] < < " ";
cout < <endl;
system( "pause ");
return 0;
}

读书人网 >C++

热点推荐