标签:mes cout 编写 nbsp png 包括 tab 正整数 for
编程题两道,第一道关于SQL的联合查询跟第二排序,第二道关于二维数组。
题目2:
给定一个空的int类型的二维数组array[n][m]。按下面的填充规则,请编写一个函数将此二维数组填满并打印出来。
| 1 | 2 | 4 | 7 |
| 3 | 5 | 8 | 11 |
| 6 | 9 | 12 | 14 |
| 10 | 13 | 15 | 16 |
输入描述:输入的包括两个正整数,表示二维数组的大小n,m(1<=n,m<=10)
输出描述:打印结果,每行行末无空格。
例1:输入为4 4
输出为
1 2 4 7
3 5 8 11
6 9 12 14
10 13 15 16
思路:首先先找出规律,是按照i+j=(0,1,2,n*m)来递增赋值。接下来就是编写程序了。
代码如下
1 #include <iostream>
2 #include<stdio.h>
3 using namespace std;
4
5 int main()
6 {
7 int n,m;
8 scanf("%d %d",&n,&m);
9 int a[100][100]={1},com=1;
10 if(n>=1&&n<=10&&m>=1&&m<=10) //判断下标是否超出
11 {
12 for(int k=1;k<=n*m;k++)
13 {
14 for(int i=0;i<n;i++)
15 {
16 for(int j=0;j<m;j++)
17 {
18 if(i+j==k)
19 {
20 a[i][k-i]=com+1;
21 com=a[i][k-i];
22 }
23 }
24 }
25 }
26 for(int i=0;i<n;i++) //输出二维数组
27 {
28 for(int j=0;j<m;j++) cout<<a[i][j]<<" ";
29 cout<<endl;
30 }
31 }
32 else cout<<"error"<<endl;
33 return 0;
34 }



标签:mes cout 编写 nbsp png 包括 tab 正整数 for
原文地址:https://www.cnblogs.com/lijuanhu321/p/9623603.html