| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 328 人关注过本帖
标题:指针冒泡排序的函数并没有进行排序操作,怎么修改
只看楼主 加入收藏
NeQhk
Rank: 2
等 级:论坛游民
威 望:1
帖 子:164
专家分:85
注 册:2014-7-19
结帖率:69.23%
收藏
已结贴  问题点数:10 回复次数:8 
指针冒泡排序的函数并没有进行排序操作,怎么修改
char *PAIXU(char *p)  利用指针为入口,把主函数输入的字符串弄到这个函数进行排序
{      
 char k;   
 int i,j=0;
for(i=0;i<n-1;i++)  //这里是L-1   
  {        
 for(j=0;j<n-i-1;j++)        运行后没有排序直接输出了。怎么破!!!!!!!!!!!!!!
   {           
  if(*(p+j)<*(p+j+1))   
          {     
            k=*(p+j);      
         *(p+j)=*(p+j+1);   
              *(p+j+1)=k;   
        }        
 }     
}   
   return p;
p是指针排序后的返回值,为了返回让主函数输出到屏幕的

[ 本帖最后由 NeQhk 于 2015-1-8 09:14 编辑 ]
搜索更多相关主题的帖子: return 字符串 
2015-01-08 09:12
诸葛欧阳
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:流年
等 级:贵宾
威 望:82
帖 子:2790
专家分:14619
注 册:2014-10-16
收藏
得分:5 
不必把函数定义为指针函数,貌似你的大括号也不匹配

一片落叶掉进了回忆的流年。
2015-01-08 09:23
NeQhk
Rank: 2
等 级:论坛游民
威 望:1
帖 子:164
专家分:85
注 册:2014-7-19
收藏
得分:0 
回复 2楼 诸葛欧阳
我是定义成了指针函数才可以把主函数输入的那些东西
传递到我这个排序函数来的 然后再用指针返回值给传递回去的。。。
2015-01-08 09:28
诸葛欧阳
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:流年
等 级:贵宾
威 望:82
帖 子:2790
专家分:14619
注 册:2014-10-16
收藏
得分:0 
不需要把函数也定义为指针,而且你是要对数字排序还是字符串,如果是字符串应该传入二维数组且用strcpm函数比较用strcpy交换

一片落叶掉进了回忆的流年。
2015-01-08 09:34
NeQhk
Rank: 2
等 级:论坛游民
威 望:1
帖 子:164
专家分:85
注 册:2014-7-19
收藏
得分:0 
回复 4楼 诸葛欧阳
二维数组,怎么传地址,
比如void paixu(char *p)的形式
因为其他的函数
比如统计
void tongji(char *p)
也是传递指针的
而两个函数对同一对象(传递进来的指针)进行操作的
写成二维数组
好像不可以,
2015-01-08 09:44
NeQhk
Rank: 2
等 级:论坛游民
威 望:1
帖 子:164
专家分:85
注 册:2014-7-19
收藏
得分:0 
回复 5楼 NeQhk
而且有点思路有点乱
2015-01-08 09:50
NeQhk
Rank: 2
等 级:论坛游民
威 望:1
帖 子:164
专家分:85
注 册:2014-7-19
收藏
得分:0 
不然定义了
char *PAIXU();
 char *str=0;
  case 3:                                                    //排序
         
          str=PAIXU(newfile);


          printf("排序后%s",str);
          break;
char *PAIXU(char *p)
省略了排序代码
 return p;
这样子逻辑上应该没错吧
传入指针返回指针
再输出
2015-01-08 09:52
wmf2014
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:216
帖 子:2039
专家分:11273
注 册:2014-12-6
收藏
得分:5 
你已经传指针进来了,操作的就是实参,你的函数void即可。

能编个毛线衣吗?
2015-01-08 10:43
NeQhk
Rank: 2
等 级:论坛游民
威 望:1
帖 子:164
专家分:85
注 册:2014-7-19
收藏
得分:0 
回复 8楼 wmf2014
我写成char *paixu(char *p)了
应该也可以吧。
2015-01-08 11:20
快速回复:指针冒泡排序的函数并没有进行排序操作,怎么修改
数据加载中...
 
   



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

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