| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1246 人关注过本帖
标题:输入十个字符串,进行排序后在主函数输出,没有显示错误,在得不到正确结果 ...
只看楼主 加入收藏
青山细雨
Rank: 2
等 级:论坛游民
帖 子:25
专家分:16
注 册:2011-10-18
结帖率:100%
收藏
已结贴  问题点数:10 回复次数:5 
输入十个字符串,进行排序后在主函数输出,没有显示错误,在得不到正确结果,求高手解答
#include <stdio.h>
#include <string.h>
void paixu(char **p,int n)
{
    int i,j,k;
    char a[80];
    for (i=0;i<n;i++)
    {
        k=i;
        for (j=i+1;j<n;j++)
            if(strcmp(*(p+i),*(p+j))>0) k=j;
            if(k!=i)
            {
                a[80]=**(p+i);
                **(p+i)=**(p+k);
                **(p+k)=a[80];
            }
    }

}
void main()
{
    int i;
    char a[10][80];
    for (i=0;i<10;i++)
        gets(a[i]);
    char *ch[10];
    for(i=0;i<10;i++)
        ch[i]=a[i];
    paixu(ch,10);
    for (i=0;i<10;i++)
        puts(a[i]);
}
搜索更多相关主题的帖子: include 字符串 
2011-10-20 20:43
零波丽
Rank: 3Rank: 3
来 自:莉莉斯
等 级:论坛游侠
帖 子:222
专家分:107
注 册:2011-9-8
收藏
得分:0 
什么叫得不到正确结果~?

人又是什么?神造出来的东西。 人是人造出来的东西。
2011-10-20 20:47
A13433758072
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:广东潮州
等 级:小飞侠
威 望:1
帖 子:1182
专家分:2784
注 册:2010-7-22
收藏
得分:0 
图片附件: 游客没有浏览图片的权限,请 登录注册
   你把k   亮一边  

[ 本帖最后由 A13433758072 于 2011-10-20 21:05 编辑 ]

一步一个脚印...............................默默地前进.....
诚邀乐于解答c菜鸟问题,的热心网友加入,  QQ群38490319
2011-10-20 20:51
王点口
Rank: 2
等 级:论坛游民
帖 子:26
专家分:50
注 册:2011-9-15
收藏
得分:10 
a[80]=**(p+i);
数组可以这样赋值吗?
2011-10-20 21:03
王点口
Rank: 2
等 级:论坛游民
帖 子:26
专家分:50
注 册:2011-9-15
收藏
得分:0 
#include <stdio.h>
#include <string.h>
void paixu(char **p,int n)
{
    int i,j,k;
    char a[80];
    for (i=0;i<n-1;i++)
    {
        k=i;
        for (j=i+1;j<n;j++)
            if(strcmp(*(p+i),*(p+j))>0) k=j;
            if(k!=i)
            {
                strcpy(a,*(p+i));
                strcpy(*(p+i),*(p+k));
                strcpy(*(p+k),a);

                /*a[80]=**(p+i);
                **(p+i)=**(p+k);
                **(p+k)=a[80];*/
            }
    }

}
void main()
{
    int i;
    char a[10][80];
    for (i=0;i<10;i++)
        gets(a[i]);
    char *ch[10];
    for(i=0;i<10;i++)
        ch[i]=a[i];
    paixu(ch,10);
    for (i=0;i<10;i++)
        puts(a[i]);
} //可以了
2011-10-20 21:09
青山细雨
Rank: 2
等 级:论坛游民
帖 子:25
专家分:16
注 册:2011-10-18
收藏
得分:0 
回复 5楼 王点口
谢谢
2011-10-21 11:56
快速回复:输入十个字符串,进行排序后在主函数输出,没有显示错误,在得不到正确 ...
数据加载中...
 
   



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

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