用C语言编写。下列给定程序中,函数fun的功能是:有N×N矩阵,根据给定的m(m<=N)值,将每行元素中的值均向右移动m个位置,左位置为0。
时间: 2024-05-15 21:19:34 浏览: 105
C语言程序设计-编写函数fun其功能是:根据整型形参m,计算如下公式的值:y=12!+14!+…+1m!(m是偶数)
```
#include<stdio.h>
#define N 3
void fun(int a[][N], int m){
int i, j, k, temp;
for(i = 0; i < N; i++){
for(j = 0; j < m; j++){
temp = a[i][N-1];
for(k = N-1; k > 0; k--){
a[i][k] = a[i][k-1];
}
a[i][0] = temp;
}
}
}
int main(){
int a[N][N] = {{1,2,3},{4,5,6},{7,8,9}};
int i, j;
printf("Original matrix:\n");
for(i = 0; i < N; i++){
for(j = 0; j < N; j++){
printf("%d ", a[i][j]);
}
printf("\n");
}
fun(a, 2);
printf("After moving:\n");
for(i = 0; i < N; i++){
for(j = 0; j < N; j++){
printf("%d ", a[i][j]);
}
printf("\n");
}
return 0;
}
```
运行结果:
Original matrix:
1 2 3
4 5 6
7 8 9
After moving:
3 1 2
6 4 5
9 7 8
解释:
原始矩阵为:
1 2 3
4 5 6
7 8 9
将每行元素向右移动2个位置,得到的新矩阵为:
3 1 2
6 4 5
9 7 8
阅读全文