注册 登录
编程论坛 C语言论坛

新人请教一个问题

陈伟超 发布于 2017-01-21 18:33, 1067 次点击
4
3   7
2   6   9
1   5   8   10
这是用指定数据给数组的下三角置数的一道题目,其中的几个for的作用不太懂,求解答


#include<stdio.h>
 main()
 {
     int x[4][4],n=0,i,j;
     for(j=0;j<4;j++)
     for(i=3;i>=j;i--)
     {n++,x[i][j]=n;}
     for(i=0;i<4;i++)
     {
         for(j=0;j<=i;j++)
         printf("%3d",x[i][j]);
         printf("\n");
     }
}

[此贴子已经被作者于2017-1-21 18:35编辑过]

5 回复
#2
bjut_Allen2017-01-21 19:02
#include<stdio.h>
 main()
 {
     int x[4][4],n=0,i,j;
     for(j=0;j<4;j++){                //输入数组元素
         for(i=3;i>=j;i--)
             n++,x[i][j]=n;
     
     }
   
     
     
     for(i=0;i<4;i++)                  //输出数组元素
     {
         for(j=0;j<=i;j++)
         printf("%3d",x[i][j]);
         printf("\n");
     }
}
//输入是从左列自下向上
 //输入是第一行向下逐行输出
#3
陈伟超2017-01-21 19:21
回复 2楼 bjut_Allen
for(j=0;j<4;j++)
 for(i=3;i>=j;i--)
请问输入数组中的这两个for的作用各是什么呢?
#4
bjut_Allen2017-01-21 20:55
回复 3楼 陈伟超
把括号位置改成我那样好理解一些,这两个for循环就是控制输入元素,你用笔一个一个写,就知道怎么输入了
#5
陈伟超2017-01-22 18:42
回复 4楼 bjut_Allen
好的,谢谢
#6
悬崖之树2017-01-23 15:19
回复 3楼 陈伟超
可以这样理解:所有输入的数组成了一个三角形,两个for的作用就是把数一个一个由下而上,从左向右填到三角形里去。然后用标准的方式输出三角形里的所有数。
1