标题:for循环的嵌套老是看不明白,请哪位大侠解释一下
只看楼主
我叫沃恩
Rank: 12Rank: 12Rank: 12
来 自:Asia
等 级:贵宾
威 望:10
帖 子:1234
专家分:3865
注 册:2013-3-29
得分:2 
这么长

因为我是菜鸟,所以应该被骂! 细节+坚持=成功!
2013-04-12 15:03
qwe885167759
Rank: 4
等 级:业余侠客
威 望:5
帖 子:148
专家分:259
注 册:2013-3-12
得分:2 
回复 楼主 winglesswu
楼主说清楚哪个f0r循环不懂啊,说的大笼统了。

我本楚狂人,凤歌笑孔丘
2013-04-12 16:23
邓士林
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:淮河河畔
等 级:贵宾
威 望:61
帖 子:2391
专家分:13384
注 册:2013-3-3
得分:2 
代码的注释如下:
#include <stdio.h>

 void merge(int [], int, int [], int, int []);      //定义融合函数

 int main()
 {
   int a[100], b[100], m, n, c, sorted[200];         //定义所需要的变量

   printf("Input number of elements in first array\n");          //清为第一个数组输入一组数
   scanf("%d", &m);

   printf("Input %d integers\n", m);               //请输入m个整数
   for (c = 0; c < m; c++) {
     scanf("%d", &a[c]);
   }

   printf("Input number of elements in second array\n");               //为第二个数组输入若干个数
   scanf("%d", &n);

   printf("Input %d integers\n", n);
   for (c = 0; c < n; c++)
   {
     scanf("%d", &b[c]);
   }

   merge(a, m, b, n, sorted);          //调用函数实现融合

   printf("Sorted array:\n");

   for (c = 0; c < m + n; c++)            //输出融合后数组的元素
   {
     printf("%d\n", sorted[c]);
   }

   return 0;
 }

 void merge(int a[], int m, int b[], int n, int sorted[])           //融合函数的实现
 {
   int i, j, k;

   j = k = 0;

   for (i = 0; i < m + n;)               
   {
     if (j < m && k < n)            //将两个数组中同下标的元素较小的存在sorted中
     {
       if (a[j] < b[k])
       {
         sorted[i] = a[j];
         j++;
       }
       else {
         sorted[i] = b[k];
         k++;
       }
       i++;
     }
     else if (j == m)     //如果数组a的长度比b的短,则将b数组继续处理,赋值给sorted
     {
       for (; i < m + n;)
       {
         sorted[i] = b[k];
         k++;
         i++;
       }
     }
     else                   //如果数组b的长度比a的短,则将a数组继续处理,赋值给sorted
     {
       for (; i < m + n;)
       {
         sorted[i] = a[j];
         j++;
         i++;
       }
     }
   }
 }

Maybe
2013-04-12 18:35



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-403435-1-1.html




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

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