| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 304 人关注过本帖
标题:直接插入的问题,求赐教
只看楼主 加入收藏
lyw321
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2012-9-16
收藏
 问题点数:0 回复次数:4 
直接插入的问题,求赐教
程序如下,能够编译运行,但是运行出的结果总是不完整。比如十个数的排序,前面会出现两个反常的数,然后剩下八个正常排列。


#include <stdio.h>
void main ()
{
  
  int i,j;
  int a[30];
  void sort (int r[],int k);
  void print(int r[],int k);
  printf("please input a number<30\n");
  scanf("%d",&i);
  for(j=0;j<i;j++)
      scanf("%d",&a[j]);
  sort (a,i);
  print(a,i);
}
void  sort (int r[],int k)
{
 int a,b,t=0;
 for (a=2;a<=k;a++)
 {
  r[t]=r[a];
  b=a-1;
  while(r[t]<r[b])
  {
   r[b+1]=r[b];b--;
   r[b+1]=r[t];
  }
 }
}
void  print (int r[],int k)
{
 int i;
 for (i=0;i<k;i++)
    {if(i%5==0) printf("\n");
     printf("%5d",r[i]);
 }
 

}
搜索更多相关主题的帖子: number include void please 
2012-09-16 12:04
dsl975708035
Rank: 3Rank: 3
来 自:平凉
等 级:论坛游侠
帖 子:101
专家分:152
注 册:2012-8-3
收藏
得分:0 
在main里声明函数不提倡 问题却没发现

唉,初三要停停了,舍不得啊。。
2012-09-16 16:37
dsl975708035
Rank: 3Rank: 3
来 自:平凉
等 级:论坛游侠
帖 子:101
专家分:152
注 册:2012-8-3
收藏
得分:0 
t似乎没变

唉,初三要停停了,舍不得啊。。
2012-09-16 16:40
lyw321
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2012-9-16
收藏
得分:0 
回复 3楼 dsl975708035
但是能够部分排序,只是每一次排序的结果的开头都有两个是错的。
2012-09-16 20:53
阿鞠尼
Rank: 13Rank: 13Rank: 13Rank: 13
来 自:首尔
等 级:蒙面侠
威 望:5
帖 子:1467
专家分:4442
注 册:2012-5-30
收藏
得分:0 
以下是引用lyw321在2012-9-16 12:04:31的发言:


void  sort (int r[],int k)
{
 int a,b,t=0;
 for (a=2;a<=k;a++)
 {
  r[t]=r[a];///////??????????why??
  b=a-1;
  while(r[t]<r[b])
  
{
   r=r;
   b--;
   r=r[t];
  }
 }
肯定是你的排序排的不对

喜欢睡觉 却经常熬夜
2012-09-16 21:42
快速回复:直接插入的问题,求赐教
数据加载中...
 
   



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

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