本题要求编写程序,将给定n×n方阵中的每个元素循环向右移m个位置 10
本题要求编写程序,将给定n×n方阵中的每个元素循环向右移m个位置本题要求编写程序,将给定n×n方阵中的每个元素循环向右移m个位置,即将第0、1、⋯、nW...
本题要求编写程序,将给定n×n方阵中的每个元素循环向右移m个位置本题要求编写程序,将给定n×n方阵中的每个元素循环向右移m个位置,即将第0、1、⋯、n−1列变换为第n−m、n−m+1、⋯、n−1、0、1、⋯、n−m−1列。
输入格式:
输入第一行给出两个正整数m和n(1≤n≤6)。接下来一共n行,每行n个整数,表示一个n阶的方阵。
输出格式:
按照输入格式输出移动后的方阵:即输出n行,每行n个整数,每个整数后输出一个空格。
输入样例:
2 3
1 2 3
4 5 6
7 8 9
输出样例:
2 3 1
5 6 4
8 9 7 展开
输入格式:
输入第一行给出两个正整数m和n(1≤n≤6)。接下来一共n行,每行n个整数,表示一个n阶的方阵。
输出格式:
按照输入格式输出移动后的方阵:即输出n行,每行n个整数,每个整数后输出一个空格。
输入样例:
2 3
1 2 3
4 5 6
7 8 9
输出样例:
2 3 1
5 6 4
8 9 7 展开
3个回答
2017-11-24 · 知道合伙人互联网行家
关注
展开全部
#include <stdio.h> #define N 4 void fun(int (*t)[N], int m) { int i, j; /**********************************found*********************************/ for(i=0; i<N; ___1___ ) i++ { for(j=N-1-m; j>=0; j--) /**********************************found*********************************/ t[i][j+___2___ ]=t[i][j]; m /**********************************found*********************************/ for(j=0; j<___3___; j++) m t[i][j]=0; } } main( ) { int t[][N]={21,12,13,24,25,16,47,38,29,11,32,54,42,21,33,10}, i, j, m; printf("\nThe original array:\n"); for(i=0; i<N; i++) { for(j=0; j<N; j++) printf("%2d ",t[i][j]); printf("\n"); } printf("Input m (m<=%d): ",N);scanf("%d",&m); fun(t,m); printf("\nThe result is:\n"); for(i=0; i<N; i++) { for(j=0; j<N; j++) printf("%2d ",t[i][j]); printf("\n"); } }
追问
没怎么看懂…
我是大一新生 能简单易懂点吗 麻烦了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询