| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1040 人关注过本帖
标题:刚写了一个用冒泡排序排按字母表顺序整理字符串,遇到些问题求教
取消只看楼主 加入收藏
attentive
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2015-3-3
结帖率:0
收藏
已结贴  问题点数:20 回复次数:3 
刚写了一个用冒泡排序排按字母表顺序整理字符串,遇到些问题求教
我想依据asc2中字母值大小做冒泡排序,给录入的字符串重按字母表顺序排序,结果打印出一行烫烫烫烫
请问问题出在哪里?

#include<stdio.h>

main()
{
    char initial[30] , t;
    int outer, inner,didchange = 0;
    puts("please write less than 30 letters\n");
    gets(initial);
    /* mao pao pai xu */
    for(outer = 0;outer < (sizeof(initial)-1); outer++)
    {
        for(inner = outer; inner < sizeof(initial); inner++)
        {
            if( initial[outer] > initial[inner])
            {
                t = initial[outer];
                initial[outer] = initial[inner];
                initial[inner] = t;
                didchange=1;
            }
        }
        if(didchange = 0)/* ti qian jie su*/
        {break;}
    }
    initial[(sizeof(initial)+1)] = "\0";
   
        printf("%s",initial);
}
搜索更多相关主题的帖子: include initial letters please 字母表 
2015-03-03 12:23
attentive
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2015-3-3
收藏
得分:0 
回复 2楼 wmf2014
嗯嗯,最近课太多忘了这个问题了,原谅我
sizeof确实返回定义的数组占内存字节数。我现在想是不是要用strlen()求字符串实际长度。
非常感谢,帮了我大忙!
2015-03-11 22:51
attentive
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2015-3-3
收藏
得分:0 
回复 2楼 wmf2014
initial[(sizeof(initial)+1)] = "\0"这一句确实问题很大嗯
2015-03-11 23:09
attentive
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2015-3-3
收藏
得分:0 
回复 6楼 wmf2014
您对字符串比较的结束条件的语句给我很大启发,十分感谢,第一次发帖就有您这样的高手帮我,我感到真幸福!!
还有个小疑问for(outer = 0;initial[outer+1]!=0; outer++)这句outer的变化为initial[1]initial[3]initial[5]会有跳过吧?去掉+1也可顺利结束是不是
2015-03-11 23:27
快速回复:刚写了一个用冒泡排序排按字母表顺序整理字符串,遇到些问题求教
数据加载中...
 
   



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

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