| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 454 人关注过本帖
标题:能帮我解析一下么谢谢
只看楼主 加入收藏
另ヘ種feel丶
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2012-3-28
结帖率:100%
收藏
已结贴  问题点数:8 回复次数:8 
能帮我解析一下么谢谢
#define N 30
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
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(a[j]<a[k])
           k=j;
      if(k!=j)
      {
         t=a[i];a[i]=a[k];a[k]=t;
      }
   }
}
void visit(int array[],int n);
void merge(int A[],int m,int B[],int n,int C[]);
void InitList(int array[],int n);
void visit(int array[],int n)
{
   int i;
   printf("\n");
   for(i=0;i<n;i++)
     printf("%d\t",array[i]);
   printf("\n");
}
void main()
{
   
   int A[N],B[N],C[2*N];
   srand((unsigned)time(NULL));
   InitList(A,10);
   sort(A,10);
   visit(A,10);
   InitList(B,10);
   visit(B,10);
   sort(B,10);
   merge(A,10,B,10,C);  
   visit(C,20);
}
void merge(int A[],int m,int B[],int n,int C[])
{
   int i,j,k;
   i=j=k=0;
   while(i<m&&j<n)
   {
      if(A[i]<B[j])
        {
          C[k]=A[i];
          i++;
        }
      else
        {
          C[k]=B[j];
          j++;
        }
     k++;
   }
   while(i<m)
      C[k++]=A[i++];
   while(j<n)
      C[k++]=B[j++];
}
void InitList(int array[],int n)
{
    int i;
    for(i=0;i<n;i++)
      array[i]=rand()%100
   
}

搜索更多相关主题的帖子: void include visit 
2012-03-30 22:15
枉椋
Rank: 2
等 级:论坛游民
帖 子:24
专家分:24
注 册:2012-3-30
收藏
得分:3 
你看不懂吗?
2012-03-30 22:25
另ヘ種feel丶
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2012-3-28
收藏
得分:0 
回复 2楼 枉椋
  呵呵  初级
2012-03-30 22:32
C_戴忠意
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:2
帖 子:575
专家分:1349
注 册:2011-10-21
收藏
得分:3 
程序代码:
#define N 30   //宏定义
#include <stdio.h>
#include <stdlib.h>
#include <time.h>//头包含
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(a[j]<a[k])
           k=j;
      if(k!=j)
      {
         t=a[i];a[i]=a[k];a[k]=t;
      }
   }
}
void visit(int array[],int n);//子函数声明  下面类似
void merge(int A[],int m,int B[],int n,int C[]);
void InitList(int array[],int n);
void visit(int array[],int n)
{
   int i;
   printf("\n");
   for(i=0;i<n;i++)
     printf("%d\t",array[i]);
   printf("\n");
}
void main()//程序入口 也是主函数
{
  

   int A[N],B[N],C[2*N];
   srand((unsigned)time(NULL));
   InitList(A,10);
   sort(A,10);
   visit(A,10);
   InitList(B,10);
   visit(B,10);
   sort(B,10);
   merge(A,10,B,10,C); 

   visit(C,20);
}
void merge(int A[],int m,int B[],int n,int C[])
{
   int i,j,k;
   i=j=k=0;
   while(i<m&&j<n)
   {
      if(A[i]<B[j])
        {
          C[k]=A[i];
          i++;
        }
      else
        {
          C[k]=B[j];
          j++;
        }
     k++;
   }
   while(i<m)
      C[k++]=A[i++];
   while(j<n)
      C[k++]=B[j++];
}
void InitList(int array[],int n)
{
    int i;
    for(i=0;i<n;i++)
      array[i]=rand()%100
  

}

编程之路定要走完……
2012-03-30 22:34
枉椋
Rank: 2
等 级:论坛游民
帖 子:24
专家分:24
注 册:2012-3-30
收藏
得分:0 
可以来我YY,我给你讲解,YY频道32402923!
2012-03-30 22:36
姚杰
Rank: 6Rank: 6
等 级:侠之大者
威 望:1
帖 子:169
专家分:477
注 册:2010-6-1
收藏
得分:3 
这是是数据结构的存储问题,基本都是函数的调用和指针的知识。。。先把C学好,然后看看链表,就可以搞懂的。

持之以恒,别留遗憾,加油
2012-03-30 22:40
另ヘ種feel丶
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2012-3-28
收藏
得分:0 
回复 4楼 C_戴忠意
谢谢了!
2012-03-30 22:41
另ヘ種feel丶
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2012-3-28
收藏
得分:0 
回复 5楼 枉椋
谢谢
2012-03-30 22:42
枉椋
Rank: 2
等 级:论坛游民
帖 子:24
专家分:24
注 册:2012-3-30
收藏
得分:0 
回复 8楼 另ヘ種feel丶
客气
2012-03-30 22:44
快速回复:能帮我解析一下么谢谢
数据加载中...
 
   



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

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