| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 538 人关注过本帖
标题:[求助]这个程序错在什么地方了?为什么会出不来正确结果?
只看楼主 加入收藏
gsbe1987
Rank: 1
等 级:新手上路
帖 子:64
专家分:0
注 册:2007-4-14
结帖率:100%
收藏
 问题点数:0 回复次数:5 
[求助]这个程序错在什么地方了?为什么会出不来正确结果?

输入五个国家的名称按字母顺序排列输出。
下面是我的程序:

#include <stdio.h>
#include <conio.h>
main()
{
char *p[5],*temp;
int i,j,k;
clrscr();

printf("Input the data:\n");
for(i=0;i<5;i++)
scanf("%s",p[i]);

getch();

for(i=0;i<4;i++)
{
k=i;
for(j=i+1;j<5;j++)
if(*p[k]>*p[j])
k=j;
temp=p[i];p[i]=p[k];p[k]=temp;
}

for(i=0;i<5;i++)
printf("%s\n",p[i]);
}


我输入:china american japan french england
结果输出:american england french french japan
为什么会出现这样的问题?

搜索更多相关主题的帖子: 结果 
2007-05-19 08:45
沙漠水手
Rank: 2
等 级:论坛游民
帖 子:69
专家分:40
注 册:2007-3-17
收藏
得分:0 
要用 strcmp   strcpy
2007-05-19 12:35
hh_melon
Rank: 1
等 级:新手上路
帖 子:44
专家分:0
注 册:2007-5-10
收藏
得分:0 
{ k=j;
temp=p[i];p[i]=p[k];p[k]=temp;
}
这个是要打括号的,
其他的地方我就找不出来了
我是用VC++6.0运行的,
但不出结果,也不知道怎么回事?
2007-05-19 13:09
raulxxyuer
Rank: 1
等 级:新手上路
威 望:1
帖 子:178
专家分:0
注 册:2007-4-23
收藏
得分:0 
我用VC++6.0会有内存错误

我很沒用,總是學不會遺忘,總是學不會割捨本不屬於我的東西。
2007-05-19 13:53
gsbe1987
Rank: 1
等 级:新手上路
帖 子:64
专家分:0
注 册:2007-4-14
收藏
得分:0 

用 strcmp strcpy跟用IF来判断大小其实是一样的嘛,应该不是主要原因


便宜又好看的U盘,款式多多~~店铺地址:http://shop34991947.
2007-05-19 21:26
darklily
Rank: 1
等 级:新手上路
帖 子:42
专家分:0
注 册:2007-5-16
收藏
得分:0 

应该是3楼说的原因


2007-05-19 21:35
快速回复:[求助]这个程序错在什么地方了?为什么会出不来正确结果?
数据加载中...
 
   



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

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