C++编了一个小程序,编译、连接均通过,但执行时弹出来那个黑框,往里输入字符再按回车后就一直没反应了,
#include<iostream>#include<string>usingnamespacestd;intmain(){inti;stringstr[5];voids...
#include <iostream>
#include <string>
using namespace std;
int main()
{
int i;
string str[5];
void sort(string s[]);
cout<<Please input string:<<endl;
for(i=0;i<=5;i++)
cin>>str[i];
sort(str);
cout<<The sorted string is:<<endl;
for(i=0;i<=5;i++)
cout<<str[i];
cout<<endl;
return 0;
}
void sort(string s[])
{
int i,j;
string temp;
for(i=0;i<4;i++)
for(j=0;j<4-i;j++)
if(s[j]>s[j+1])
{
temp=s[j];
s[j]=s[j+1];
s[j+1]=temp;
}
} 展开
#include <string>
using namespace std;
int main()
{
int i;
string str[5];
void sort(string s[]);
cout<<Please input string:<<endl;
for(i=0;i<=5;i++)
cin>>str[i];
sort(str);
cout<<The sorted string is:<<endl;
for(i=0;i<=5;i++)
cout<<str[i];
cout<<endl;
return 0;
}
void sort(string s[])
{
int i,j;
string temp;
for(i=0;i<4;i++)
for(j=0;j<4-i;j++)
if(s[j]>s[j+1])
{
temp=s[j];
s[j]=s[j+1];
s[j+1]=temp;
}
} 展开
5个回答
展开全部
cout<<“Please input string:”<<endl; //少了双引号
for(i=0;i<5;i++)
cin>>str[i];
sort(str);
cout<<“The sorted string is:”<<endl; //少了双引号
i<=5改成i<5
for(i=0;i<5;i++) //加大括号
{
cout<<str[i];
cout<<endl;
}
for(i=0;i<5;i++)
cin>>str[i];
sort(str);
cout<<“The sorted string is:”<<endl; //少了双引号
i<=5改成i<5
for(i=0;i<5;i++) //加大括号
{
cout<<str[i];
cout<<endl;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
如前面两位所述,i<=5改成i<5,i=5时访问数组越界了,另外楼主是在比较字符串的大小吗?还是在比较单个字符的啊,程序的目的是做什么的?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include <iostream>
#include <string>
using namespace std;
int main()
{
int i;
string str[5];
void sort(string s[]);
cout<<"Please input string:"<<endl;
for(i=0;i<5;i++)
cin>>str[i];
sort(str);
cout<<"The sorted string is:"<<endl;
for(i=0;i<5;i++)
cout<<str[i];
cout<<endl;
return 0;
}
void sort(string s[])
{
int i,j;
string temp;
for(i=0;i<4;i++)
for(j=0;j<4-i;j++)
if(s[j]>s[j+1])
{
temp=s[j];
s[j]=s[j+1];
s[j+1]=temp;
}
}
#include <string>
using namespace std;
int main()
{
int i;
string str[5];
void sort(string s[]);
cout<<"Please input string:"<<endl;
for(i=0;i<5;i++)
cin>>str[i];
sort(str);
cout<<"The sorted string is:"<<endl;
for(i=0;i<5;i++)
cout<<str[i];
cout<<endl;
return 0;
}
void sort(string s[])
{
int i,j;
string temp;
for(i=0;i<4;i++)
for(j=0;j<4-i;j++)
if(s[j]>s[j+1])
{
temp=s[j];
s[j]=s[j+1];
s[j+1]=temp;
}
}
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
所有i<=5改成i<5
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询