标题:这个程序哪有错,求解答
只看楼主
蜗牛cr
Rank: 1
等 级:新手上路
帖 子:49
专家分:5
注 册:2014-11-24
结帖率:100%
已结贴  问题点数:20 回复次数:10 
这个程序哪有错,求解答
#include<iostream>
#include<string>
using namespace std;
int main()
{
  int i,j;
  string str[5]={"we","go","to","school","today"};
  string t;
  for(i=0;i<5;i++)
    for(j=0;j<5-i;j++)
    {
     if(str[j]>str[j+1])
     {
      t=str[j];
      str[j]=str[j+1];
      str[j+1]=t;
     }
    }

  for(i=0;i<5;i++)
    cout<<str[i]<<" ";
  cout<<endl;
  return 0;
}
搜索更多相关主题的帖子: include school 
2015-03-13 23:55
zklhp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:china
等 级:贵宾
威 望:254
帖 子:11485
专家分:33241
注 册:2007-7-10
得分:0 
这是C++ 需要我帮你转到C++版块么
2015-03-14 00:03
zklhp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:china
等 级:贵宾
威 望:254
帖 子:11485
专家分:33241
注 册:2007-7-10
得分:5 
程序代码:
// g++ -Wall -fomit-frame-pointer -funroll-loops -Ofast -march=corei7-avx -msse4.2 -mavx -std=c++11 a.cpp -lm -o a
#include <iostream>
#include <vector>
#include <string>
#include <algorithm>

using std::cout;
using std::endl;
using std::vector;
using std::string;
using std::sort;

int main(void)
{
    vector<string> content = {"we", "go", "to", "school", "today"};
    sort(content.begin(), content.end());
    for (auto output : content)
        cout << output << endl;
   
    return 0;
}


我口味比较重 C++11 献丑了
2015-03-14 00:23
诸葛欧阳
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:流年
等 级:贵宾
威 望:82
帖 子:2790
专家分:14619
注 册:2014-10-16
得分:0 
程序代码:
#include<iostream>
#include<string>
using namespace std;
int main()
{
  int i,j;
  string str[6]={"we","go","to","school","today"};//
  string t;
  for(i=0;i<5;i++)
    for(j=0;j<5-i;j++)
    {
     if(str[j]>str[j+1])
     {
      t=str[j];
      str[j]=str[j+1];
      str[j+1]=t;
     }
    }

  for(i=0;i<6;i++)
    cout<<str[i]<<" ";
  cout<<endl;
//cout<<str[0];说明str[0]是空格
  return 0;
}

一片落叶掉进了回忆的流年。
2015-03-14 21:01
诸葛欧阳
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:流年
等 级:贵宾
威 望:82
帖 子:2790
专家分:14619
注 册:2014-10-16
得分:15 
程序代码:
#include<iostream>
#include<string>
using namespace std;
int main()
{
  int i,j;
  string str[6]={"we","go","to","school","today"};//
  string t;
  for(i=0;i<5;i++)
    for(j=0;j<4-i;j++)//这里不能到4,否则
    {
     if(str[j]>str[j+1])//j+1为5,正好是空格
     {
      t=str[j];
      str[j]=str[j+1];
      str[j+1]=t;
     }
    }

  for(i=0;i<5;i++)
    cout<<str[i]<<" ";
  cout<<endl;
//cout<<str[0];说明str[0]是空格
  return 0;
}

修改之后代码

一片落叶掉进了回忆的流年。
2015-03-14 21:06
zcdjt
Rank: 3Rank: 3
等 级:论坛游侠
威 望:4
帖 子:99
专家分:181
注 册:2014-9-9
得分:0 
数组是从0开始的。

今朝醉
2015-03-14 22:04
蜗牛cr
Rank: 1
等 级:新手上路
帖 子:49
专家分:5
注 册:2014-11-24
得分:0 
回复 3楼 zklhp
好复杂的感觉
2015-03-15 09:08
蜗牛cr
Rank: 1
等 级:新手上路
帖 子:49
专家分:5
注 册:2014-11-24
得分:0 
回复 5楼 诸葛欧阳
不是只有5个字符串吗,为什么要定义str[6],还有str[0]为什么是空格?
2015-03-15 09:11
蜗牛cr
Rank: 1
等 级:新手上路
帖 子:49
专家分:5
注 册:2014-11-24
得分:0 
#include<iostream>
#include<string>
using namespace std;
int main()
{
  int i,j;
  string str[5]={"we","go","to","school","today"};//×¢
  string t;
  for(i=0;i<4;i++)
    for(j=0;j<4-i;j++)
    {
     if(str[j]>str[j+1])
     {
      t=str[j];
      str[j]=str[j+1];
      str[j+1]=t;
     }
    }

  for(i=0;i<5;i++)
    cout<<str[i]<<" ";
  cout<<endl;
  return 0;
}
2015-03-15 09:17
caiyumeng
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2015-3-18
得分:0 
回复 3楼 zklhp
版主 字符串还能这样比较大小啊 长见识了
2015-03-18 22:29



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-442624-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.971690 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved