一行,输入两个整数n和m,用空格分隔,第二行包含n*m个整数(范围-231~231-1)。(1≤n≤10, 1≤m≤10)
输出规划后n行m列的矩阵,每个数的后面有一个空格。
2 3 1 2 3 4 5 6
1 2 3 4 5 6
#include <stdio.h>
int main(){
// 这里 定义 n 行 没有使用到
int n = 0, m = 0,i = 0, num = 0;
scanf("%d %d",&n,&m);
while (scanf("%d", &num) == 1) {
//当 i > 0 且 i 是 m 的倍数时,输出一个换行符 \n,实现每 m 个数字换行的功能。
if (i > 0 && i % m == 0) {
printf("\n");
}
//当 i > 0 但 i 不是 m 的倍数时,输出一个空格,保证数字之间用空格分隔。
if (i % m != 0) {
printf(" ");
}
printf("%d", num);
i++;
}
printf("\n");
} #include<stdio.h>
int main()
{
int n = 0;
int m = 0;
scanf("%d %d",&n,&m);
int arr[10][10]={0};
int i = 0;
int j = 0;
for(i=0;i<n;i++)
{
for(j=0;j<m;j++)
{
scanf("%d ",&arr[i][j]);
}
}
for(i=0;i<n;i++)
{
for(j=0;j<m;j++)
{
printf("%d ",arr[i][j]);
}
printf("\n");
}
return 0;
} #include <stdio.h>
int main() {
int n = 0, m = 0;
scanf("%d%d", &m, &n);
int a = m * n;
int arr[100] = { 0 };
for(int i = 0; i < a; i++)
{
scanf("%d", &arr[i]);
}
int k = 0;
for(int i = 0; i < m; i++)
{
for(int j = 0 + k; j < n + k; j++)
{
printf("%d ",arr[j]);
}
k += n ;
printf("\n");
}
} #include <stdio.h>
#include <malloc.h>
int main()
{
int n = 0;
int m = 0;
int i = 0;
int j = 0;
int* p = NULL;
scanf("%d%d", &n, &m);
//开辟空间
p = (int*)malloc(sizeof(int) * n * m);
if(!p)
{
perror("malloc");
return 1;
}
//录入数据
for(i = 0; i < n; i++)
{
for(j = 0; j < m; j++)
{
scanf("%d", p + (i * m) + j);
}
}
//输出结果
for(i = 0; i < n; i++)
{
for(j = 0; j < m; j++)
{
printf("%d ", *(p + (i * m) + j));
}
printf("\n");
}
//开辟空间
free(p);
p = NULL;
return 0;
} #include <stdio.h>
int main() {
int n, m = 0;
int arr[10][10] = {0};
scanf("%d %d", &n, &m);
for (int i = 0; i < n; i++) {
for (int j = 0; j < m; j++) {
scanf("%d", &arr[i][j]);
}
}
for (int i = 0; i < n; i++) {
for (int j = 0; j < m; j++) {
printf("%d ", arr[i][j]);
}
printf("\n");
}
return 0;
} #include <stdio.h>
int main() {
int m,n,a[11][11];
scanf("%d %d",&m,&n);
for(int i=0;i<m;i++){
for(int j=0;j<n;j++){
scanf("%d",&a[i][j]);
printf("%d ",a[i][j]);
}
printf("\n");
}
return 0;
} #include <stdio.h>
int main()
{
int arr[100];
int arr1[100][100];
int n = 0;
int m = 0;
int a = 0;
int count = 0;
scanf("%d %d", &n, &m);
for (int i = 0; i < n * m; i++)
{
scanf("%d", &arr[i]);
}
//赋值
for (int i = 0; i < n; i++)
{
for (int j = 0; j < m; j++)
{
arr1[i][j] = arr[count];
count++;
}
}
//打印
for (int i = 0; i < n; i++)
{
for (int j = 0; j < m; j++)
{
printf("%d ", arr1[i][j]);
}
printf("\n");
}
return 0;
} #include <stdio.h>
int main()
{
int n,m;
scanf("%d %d",&n,&m);
int i;
int k[n*m];//k这个一维数组一定要在n,m输入之后定义
for(i=0;i<n*m;i++)
{
scanf("%d ",k+i);
}
int arr[n][m];
int g = 0;
for(i=0;i<n;i++)
{
int j;
for(j=0;j<m;j++)
{
arr[i][j] = k[g++];
printf("%d ",arr[i][j]);
}
printf("\n");//打印完一行,记得换行
}
return 0;
} #include <stdio.h>
int main() {
int n = 0;
int m = 0;
scanf("%d %d", &n, &m);
int arr[100][100] = { 0 };
//int arr[100] = { 0 }; 一维数组也可以
int i = 0;
for (i = 0; i < n; i++)
{
int j = 0;
for (j = 0; j < m; j++)
{
scanf("%d ", &arr[i][j]);
printf("%d ", arr[i][j]);
}
printf("\n");
}
return 0;
}