程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程解疑 >> c語言-定義函數中的二維要怎麼寫?

c語言-定義函數中的二維要怎麼寫?

編輯:編程解疑
定義函數中的二維要怎麼寫?

#include
int i,j,n,t,k[105][105];
void transpose(int k[105][105],int n)
{
for(i=1;i<=n;i++)
for(j=1;j<=i;j++)
{
t=k[i][j];
k[i][j]=k[j][i];
k[j][i]=t;
}
}

int main()
{

scanf("%d",&n);
for(i=1;i<=n;i++)
for(j=1;j<=n;j++)
scanf("%d",&k[i][j]);


transpose(k[105][105],n);




for(i=1;i<=n;i++)
{
for(j=1;j<=n;j++)
printf("%d ",k[i][j]);
printf("\n");
}
return 0;

}
運行不了?

最佳回答:


函數調用transpose(k[105][105],n);改成transpose(k, n);才行。
k[105][105]表示的是第106行第106列的那個元素

 #include<stdio.h>
int i, j, n, t, k[105][105];
void transpose(int k[105][105], int n)
{
    for (i = 1; i <= n; i++)
    for (j = 1; j <= i; j++)
    {
        t = k[i][j];
        k[i][j] = k[j][i];
        k[j][i] = t;
    }
}


int main()
{

    scanf("%d", &n);
    for (i = 1; i <= n; i++)
    for (j = 1; j <= n; j++)
        scanf("%d", &k[i][j]);

    transpose(k, n);

    for (i = 1; i <= n; i++)
    {
        for (j = 1; j <= n; j++)
            printf("%d ", k[i][j]);
        printf("\n");
    }
    return 0;
}
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved