1030: C語言程式設計教程(第三版)課後習題8.4

來源:互聯網
上載者:User

標籤:output   stdio.h   教程   ret   oid   char   argv   習題   div   

題目描述寫一個函數,使給定的一個二維數組(3×3)轉置,即行列互換。輸入一個3x3的矩陣輸出轉置後的矩陣範例輸入
1 2 34 5 67 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     // output39     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             else46                 printf(" %d", a[i][j]);47         }48         printf("\n");  //輸出斷行符號鍵49     }50     return 0;51 }

 

 

說明:

1、在對於二維數組傳參的時候,不能使用a[][],形式。應該要使用 a[][2]形式

2、在列印結果時候。每一行不能有多餘的空格。

 

1030: C語言程式設計教程(第三版)課後習題8.4

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.