学习c语言的在读大学生 2022-11-06 21:21 采纳率: 100%
浏览 75
已结题

c语言问题(必采纳)

(我在pta做了很多次都不行)下图是我写的程序,模拟运行没有问题,但是就是显示我答案错误!
输入一个n×n的方阵,把其转置并输出。

输入格式:
测试数据有多组,处理到文件尾。对于每组测试,第一行输入一个整数n(n≤10),接下来的n行每行输入n个不超过2位的整数。

输出格式:
对于每组测试,输出这n×n矩阵的转置方阵,每行的每两个数据之间留一个空格。

输入样例:
5
5 51 96 80 45
51 57 77 45 47
72 45 58 83 21
0 28 42 72 42
91 61 7 73 66
输出样例:
5 51 72 0 91
51 57 45 28 61
96 77 58 42 7
80 45 83 72 73
45 47 21 42 66

img

  • 写回答

1条回答 默认 最新

  • JarodYv 人工智能领域优质创作者 2022-11-06 21:39
    关注

    你的实现仅仅是在输出上将数组以转置的形式输出,数组本身并没有转置。题目的要求是将其转置并输出。我实现了一版,供你参考。如果对你有帮助,望采纳。

    #include <stdio.h>
    
    int main() {
        int n;
        scanf("%d", &n);
        int arr[n][n];
        for (int i = 0; i < n; i++) {
            for (int j = 0; j < n; j++) {
                scanf("%d", &arr[i][j]);
            }
        }
        for (int i = 0; i < n; i++) {
            for (int j = 0; j < i; j++) {
                int tmp = arr[i][j];
                arr[i][j] = arr[j][i];
                arr[j][i] = tmp;
            }
        }
        for (int i = 0; i < n; i++) {
            for (int j = 0; j < n; j++) {
                printf("%d", arr[i][j]);
                if (j != n - 1)
                    printf(" ");
            }
            printf("\n");
        }
        return 0;
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录

报告相同问题?

问题事件

  • 系统已结题 11月14日
  • 已采纳回答 11月6日
  • 创建了问题 11月6日

悬赏问题

  • ¥15 拓扑学,凸集,紧集。。
  • ¥15 如何扩大AIS数据容量
  • ¥15 单纯型python实现编译报错
  • ¥15 c++2013读写oracle
  • ¥15 c++ gmssl sm2验签demo
  • ¥15 关于模的完全剩余系(关键词-数学方法)
  • ¥15 有没有人懂这个博图程序怎么写,还要跟SFB连接,真的不会,求帮助
  • ¥15 PVE8.2.7无法成功使用a5000的vGPU,什么原因
  • ¥15 keil官网下载psn序列号在哪
  • ¥15 想用adb命令做一个通话软件,播放录音