| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 634 人关注过本帖
标题:一个小问题,一直不明白,希望各位达人帮一下
取消只看楼主 加入收藏
遥夜闲信步
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2008-9-2
收藏
 问题点数:0 回复次数:1 
一个小问题,一直不明白,希望各位达人帮一下
初学C不久,在谭老师的书上看到这么一个例题:
用选择法对数组中的10个整数按由小到大排序

#include<stdio.h>
void main()
{
  void sort(int array[],int n);
  int a[10],i;
  printf("enter the array\n");
  for(i=0;i<10;i++)
      scanf("%d",&a[i]);
  sort(a,10);
  printf("the sorted array:\n");
  for(i=0;i<10;i++)
      printf("%5d",a[i]);
  printf("\n");
}
  void sort(int array[],int n)
{
  int i,j,k,t;
  for(i=0;i<n-1;i++)
  {
     k=i;
     for(j=i+1;j<n;j++)
         if(array[j]<array[k])
             k=j;
         t=array[k];array[k]=array[i];array[i]=t;
  }
}

这是例题;
但是,我有一个问题,为什么把调用函数改成
void sort(int array[],int n)
{
  int i,j,t;
  for(i=0;i<n-1;i++)
  {
    for(j=i+1;j<n;j++)
        if(array[i]>array[j])
         t=array[i];array[i]=array[j];array[j]=t;
  }
}
就是错误的呢,在原例题中的K的作用是什么呢.
搜索更多相关主题的帖子: include 
2008-09-02 20:29
遥夜闲信步
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2008-9-2
收藏
得分:0 
哦,看明白了。自己钻了牛角尖,谢谢各位.
2008-09-04 21:40
快速回复:一个小问题,一直不明白,希望各位达人帮一下
数据加载中...
 
   



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

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