zoukankan      html  css  js  c++  java
  • 1030: C语言程序设计教程(第三版)课后习题8.4

    题目描述

    写一个函数,使给定的一个二维数组(3×3)转置,即行列互换。

    输入

    一个3x3的矩阵

    输出

    转置后的矩阵

    样例输入

    1 2 3
    4 5 6
    7 8 9
    

    样例输出

    1 4 7 
    2 5 8 
    3 6 9 



     1 #include <stdio.h>
     2 
     3 
     4 void convert(int a[][3], int row, int col) //二维数组在做形参时候,第二位一定要写
     5 {
     6     int i, j, temp;
     7     for(i = 0; i < row; i ++)
     8     {
     9         for(j = i; j < col; j++)
    10         {
    11             // 交换
    12             if(i != j)
    13             {
    14                 temp = a[i][j];
    15                 a[i][j] = a[j][i];
    16                 a[j][i] = temp; 
    17             }
    18         }
    19     }
    20 }
    21 
    22 int main(int argc, char const *argv[])
    23 {
    24     
    25     // 写一个函数,使给定的一个二维数组(3×3)转置,即行列互换
    26     // input 
    27     int a[3][3], i, j;
    28     for(i = 0; i < 3; i++)
    29     {
    30         for(j = 0; j < 3; j++)
    31         {
    32             scanf("%d", &a[i][j]);
    33         }
    34     }
    35 
    36     convert(a, 3, 3);
    37 
    38     // output
    39     for(i = 0; i < 3; i++)
    40     {
    41         for(j = 0; j < 3; j++)
    42         {
    43             if(j == 0)
    44                 printf("%d", a[i][j]);
    45             else
    46                 printf(" %d", a[i][j]);
    47         }
    48         printf("
    ");  //输出回车键
    49     }
    50     return 0;
    51 }

    说明:

    1、在对于二维数组传参的时候,不能使用a[][],形式。应该要使用 a[][2]形式

    2、在打印结果时候。每一行不能有多余的空格。

  • 相关阅读:
    数据存储过程学习
    Python实现目录文件扫描功能
    python关于邮件发送包smtplib的实践分享
    Java自学笔记之学生管理系统
    Java自学笔记
    Java自学笔记1206
    java自学笔记
    Django常用命令
    django+SQLite搭建轻量级个人博客(六)数据校验
    django+SQLite搭建轻量级个人博客(五)分页
  • 原文地址:https://www.cnblogs.com/hello-lijj/p/7853154.html
Copyright © 2011-2022 走看看