解题思路:1.先对数组内100*100个数赋值,之后需要多少就输出多少
2.先对a[0][0]=1赋值,之后初始化第0列所有数,之后再将其他的通过循环一起遍历赋值
3.第一列利用变量p=1进行下一位计算,第0列所有行之间数关系为,其中p每次赋值后要加1:
a[i][0]=a[i-1][0]+p; p++;
4.其余赋值同理,利用temp帮助同行不同列的数目赋值,需要注意的是,每次换行赋值temp都要重新初始化,这里借用s在每行赋值完毕后加1实现。
// 将所有数进行赋值 int s=2; int temp; for(int i=0;i<100;i++){ temp=s; for(int j=1;j<100;j++){ a[i][j]=a[i][j-1]+temp; temp++; } s++; }
参考代码:
#include<iostream> using namespace std; int n; int a[100][100]; int main(){ cin>>n; // 第一列初始化 int p=1; a[0][0]=1; for(int i=1;i<100;i++){ a[i][0]=a[i-1][0]+p; p++; } // 将所有数进行赋值 int s=2; int temp; for(int i=0;i<100;i++){ temp=s; for(int j=1;j<100;j++){ a[i][j]=a[i][j-1]+temp; temp++; } s++; } for(int i=0;i<n;i++){ for(int j=0;j<n-i;j++){ cout<<a[i][j]<<" "; } cout<<endl; } return 0; }
0.0分
3 人评分
C语言程序设计教程(第三版)课后习题8.4 (C语言代码)浏览:624 |
【出圈】 (C语言代码)浏览:564 |
分糖果 (C++代码)浏览:1459 |
大小写转换 (C语言代码)浏览:869 |
ASCII帮了大忙浏览:758 |
C语言程序设计教程(第三版)课后习题6.4 (C语言代码)浏览:609 |
简单的a+b (C语言代码)浏览:610 |
C语言程序设计教程(第三版)课后习题5.7 (C语言代码)浏览:590 |
【蟠桃记】 (C语言代码)浏览:670 |
三角形 (C++代码)递推浏览:771 |