| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1109 人关注过本帖
标题:用类写的一个简单程序 为什么有问题?
取消只看楼主 加入收藏
zhao9302
Rank: 1
等 级:新手上路
帖 子:170
专家分:0
注 册:2007-5-10
收藏
 问题点数:0 回复次数:7 
用类写的一个简单程序 为什么有问题?

#include<iostream>
#include<string>

using namespace std;

class sort
{
private:
string str[5];
int i,j;
string temp;
public:
void setdate();
void sort();
void print();
};

void sort::setdate()
{
cout<<"请输入5个字符串:"<<endl;
for(i=0;i<5;i++)
cin<<str[i];
}

void sort::sort()
{
for(i=0;i<5;i++)
for(j=0;j<4-i;j++)
{
if(str[i]>str[j])
{
temp=str[i];
str[j]=str[i];
str[i]=temp;
}
}
}

void sort::print()
{
cout<<"排序后的字符串:";
for(i=0;i<5;i++)
cout<<str[i]<<'\t';
}


int main()
{
sort s1;
s1.setdate();
s1.sort();
s1.print();
return 0;
}

就是输入5个字符串 按从小到达排序 我怎么看都找不到错误 用编译器找的错误都觉得没问题
提示了一大堆错误


[此贴子已经被作者于2007-10-15 17:57:04编辑过]

搜索更多相关主题的帖子: void private include public 
2007-10-15 17:55
zhao9302
Rank: 1
等 级:新手上路
帖 子:170
专家分:0
注 册:2007-5-10
收藏
得分:0 

晕了 我用的是冒泡排序 为什么没排?


我要一步一步往上爬……
2007-10-15 20:00
zhao9302
Rank: 1
等 级:新手上路
帖 子:170
专家分:0
注 册:2007-5-10
收藏
得分:0 
谢谢拉

我要一步一步往上爬……
2007-10-15 20:10
zhao9302
Rank: 1
等 级:新手上路
帖 子:170
专家分:0
注 册:2007-5-10
收藏
得分:0 
我也发现错误太多了
而刚刚你改了这个算法 我运行结果本是要 将 5个字符串排序的 结果成了 就是排给输入的单词

而我找网上找了个冒泡排序
for(i=0;i<N;i++)
{
for(j=0;j<N-1-i;j++)
{
if(grade[j]<grade[j+1])
{
temp=grade[j+1];
grade[j+1]=grade[j];
grade[j]=temp;
}
}
}


我按这个方法改了 同样是不排序

我要一步一步往上爬……
2007-10-15 20:23
zhao9302
Rank: 1
等 级:新手上路
帖 子:170
专家分:0
注 册:2007-5-10
收藏
得分:0 
对了 我想问下 为什么我输出的不是字符串?

我要一步一步往上爬……
2007-10-15 20:44
zhao9302
Rank: 1
等 级:新手上路
帖 子:170
专家分:0
注 册:2007-5-10
收藏
得分:0 
没呐 我没注意看
我看书上的就是这样判断的
只是我把他用类改了下 顺便用我自己记忆的冒泡排序^^^^

我要一步一步往上爬……
2007-10-15 20:50
zhao9302
Rank: 1
等 级:新手上路
帖 子:170
专家分:0
注 册:2007-5-10
收藏
得分:0 

我先在把程序改成这样了
编译的过去
但是运行时候 当输完数字就出问题了 为什么啊
我的编译器是 VC++6.0

#include<iostream>
#include<string>

using namespace std;

class sort
{
private:
string str[5];
int i,j;
string temp;
public:
void setdate();
sort();
void print();
};

sort::sort()
{
cout<<"请输入5个字符串:"<<endl;
for(i=0;i<5;i++)

cin>>str[i];
}

void sort::setdate()
{
for(i=0;i<4;i++)
for(j=0;j<5-i;j++)
{
if(str[j]>str[j+1])
{
temp=str[j];
str[j]=str[j+1];
str[j+1]=temp;
}
}
}

void sort::print()
{
cout<<"排序后的字符串:";
for(i=0;i<5;i++)
cout<<str[i]<<'\t';
}


int main()
{
sort s1;
s1.setdate();
s1.print();
return 0;
}


我要一步一步往上爬……
2007-10-16 15:12
zhao9302
Rank: 1
等 级:新手上路
帖 子:170
专家分:0
注 册:2007-5-10
收藏
得分:0 

咋没人来看看呐


我要一步一步往上爬……
2007-10-16 20:53
快速回复:用类写的一个简单程序 为什么有问题?
数据加载中...
 
   



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

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