编写程序,从键盘输入一个3行3列的二维数组,交换两条对角线的值,输出交换后的二维数组
时间: 2024-05-12 16:17:39 浏览: 116
好的,这是一个数组交换问题,以下是对角线交换的程序实现:
```
#include <stdio.h>
int main()
{
int array[3][3];
int temp;
// 输入一组3x3的二维数组
printf("请输入一个3行3列的二维数组:\n");
for(int i=0;i<3;i++){
for(int j=0;j<3;j++){
scanf("%d",&array[i][j]);
}
}
// 交换数组对角线的值
for(int i=0;i<3;i++){
temp = array[i][i];
array[i][i] = array[i][2-i];
array[i][2-i] = temp;
}
// 输出交换后的数组
printf("交换后的二维数组为:\n");
for(int i=0;i<3;i++){
for(int j=0;j<3;j++){
printf("%d ",array[i][j]);
}
printf("\n");
}
return 0;
}
```
执行结果:
```
请输入一个3行3列的二维数组:
1 2 3
4 5 6
7 8 9
交换后的二维数组为:
3 2 1
4 5 6
9 8 7
```
希望这能帮助到您!
相关问题
编写C语言程序,从键盘中输入一个三行三列的二维数组,交换两条对角线的值,输出交换后的二维数组
好的,这个问题可以回答。以下是C语言程序的代码:
#include <stdio.h>
int main() {
int matrix[3][3];
// 从键盘输入二维数组
printf("请输入一个3行3列的二维数组:\n");
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 3; j++) {
scanf("%d", &matrix[i][j]);
}
}
// 交换对角线上的两个元素
int temp = matrix[0][0];
matrix[0][0] = matrix[2][2];
matrix[2][2] = temp;
temp = matrix[0][2];
matrix[0][2] = matrix[2][0];
matrix[2][0] = temp;
// 输出交换后的二维数组
printf("交换后的二维数组为:\n");
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 3; j++) {
printf("%d ", matrix[i][j]);
}
printf("\n");
}
return 0;
}
C语言中编写程序,从键盘输入一个3行3列的二维数组,交换两条对角线的值,输出交换后的二维数组。 【注意】运行效果应如下(前3行为输入,后3行为输出) 1 2 3 4 5 6 7 8 9 3 2 1 4 5 6 9 8 7
好,以下是您需要的C语言程序代码:
```c
#include <stdio.h>
int main() {
int arr[3][3];
int i, j, t;
for (i = 0; i < 3; i++) {
for (j = 0; j < 3; j++) {
scanf("%d", &arr[i][j]);
}
}
for (i = 0; i < 3; i++) {
t = arr[i][i];
arr[i][i] = arr[i][2 - i];
arr[i][2 - i] = t;
}
for (i = 0; i < 3; i++) {
for (j = 0; j < 3; j++) {
printf("%d ", arr[i][j]);
}
printf("\n");
}
return 0;
}
```
输入
```
1 2 3
4 5 6
7 8 9
```
后,程序会输出
```
3 2 1
4 5 6
9 8 7
```
阅读全文
相关推荐






