解题思路:
这个题我的题解就是纯计算出来的,每一行每一列都是找规律。首先先输入一个数,
对于每一行,写一个外循环,里面套着每一列的输出,也就是内循环,对于每一行的输出,
首先先计算第一个数,规律就是上一行的行数加上上一行那个数。 然后从第二列开始写内循环,
每一列的数就是上一列的那个数加上本列的列数加上上一行的行数。就找出来了。
注意事项:
唯一需要注意的就是格式控制输出,末尾不能有多余的空格,每一个输出最后别有换行,
这个只要你把规律找出来之后循环中稍微限制一下即可。
参考代码:
#include <iostream>
using namespace std;
int main()
{
int n;
while (cin>>n)
{
int temp = 0;
int start = 1;
for (int i=1; i<=n; i++) //行
{
if(i<n)
{
start = i-1+start; //第一个数的规律,上一行的行数加上一行那个数,初始为1
temp = start; //记录第一列,计算第二列时用到
cout << start << " ";
for (int j=2; j<=n-i+1; j++) // 列
{
if (j<n-i+1)
{
temp += j+i-1; //上一列那个数加上本列的列数加上上一行的行数
cout << temp << " ";
}
else
{
temp += j+i-1;
cout << temp;
}
}
cout << endl;
}
else
{
start = i-1+start;
temp = start;
cout << start;
for (int j=2; j<=n-i+1; j++) // 列
{
if (j<n-i+1)
{
temp += j+i-1;
cout << temp << " ";
}
else
{
temp += j+i-1;
cout << temp;
}
}
}
}
}
return 0;
}
0.0分
0 人评分
最长单词 (C语言代码)浏览:1394 |
A+B for Input-Output Practice (II) (C语言代码)浏览:1004 |
【蟠桃记】 (C语言代码)浏览:669 |
三角形 (C++代码)记忆化搜索浏览:1235 |
用筛法求之N内的素数。 (C++代码)浏览:704 |
2003年秋浙江省计算机等级考试二级C 编程题(2) (C语言代码)浏览:590 |
C二级辅导-求偶数和 (C语言代码)浏览:674 |
The 3n + 1 problem (C语言代码)浏览:505 |
C语言程序设计教程(第三版)课后习题7.4 (C语言代码)浏览:451 |
很简单,,题解1041:C语言程序设计教程(第三版)课后习题9.8 (C语言代码)浏览:599 |