| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 324 人关注过本帖
标题:编程中遇到的问题 帮忙看看下面哪里错了
只看楼主 加入收藏
qq270301907
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2012-6-26
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:1 
编程中遇到的问题 帮忙看看下面哪里错了
//7定义一个排序函数
struct student *sort(struct student *h)
{
    int i,j,k;
    struct student *p1,*p2,*p3;
    printf("请选择排序方式1按学号排序2按总分排序\n");
    scanf("%d",&j);getchar();
    if(j==1)
   {  p1=h;
         p2=p1->next;
     
     
     
     for(i=0;i<n-1;i++)
     {
         for(k=0;k<n-i-1;k++)
         {
             if(p1->num>p2->num)
             {p3=p1;
              p1=p2;
              p2=p3;
             }
           p1=p1->next;
           p2=p1->next;
         }
     }
     
}
  head=p1;
  return(head); }
2012-06-26 19:00
全世界安静
Rank: 2
等 级:论坛游民
帖 子:104
专家分:65
注 册:2012-6-4
收藏
得分:20 
楼主仅仅交换了指针,并不能起到交换结点的作用,需要设置3个指针交换前后两个结点,或者直接结构体整体赋值交换
2012-06-26 19:55
快速回复:编程中遇到的问题 帮忙看看下面哪里错了
数据加载中...
 
   



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

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