for(i=0;ii;i++)
創(chuàng)新互聯(lián)長(zhǎng)期為上千多家客戶提供的網(wǎng)站建設(shè)服務(wù),團(tuán)隊(duì)從業(yè)經(jīng)驗(yàn)10年,關(guān)注不同地域、不同群體,并針對(duì)不同對(duì)象提供差異化的產(chǎn)品和服務(wù);打造開放共贏平臺(tái),與合作伙伴共同營(yíng)造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為禹會(huì)企業(yè)提供專業(yè)的成都做網(wǎng)站、成都網(wǎng)站制作,禹會(huì)網(wǎng)站改版等技術(shù)服務(wù)。擁有十多年豐富建站經(jīng)驗(yàn)和眾多成功案例,為您定制開發(fā)。
兄弟,這句話錯(cuò)了,應(yīng)該是for(i=0;i3;i++)
printf("處理后的數(shù)組為\n")
這句話少了一個(gè)分號(hào)
printf("\n")這個(gè)也是少分號(hào)
C語(yǔ)言中不接受數(shù)組作為函數(shù)的參數(shù)和返回值,所以你傳遞數(shù)組的做法是錯(cuò)誤的。
但是可以傳遞數(shù)組的指針,例如:
void?array(int?a[][3]){...}
聲明或定義時(shí),如下語(yǔ)句的效果等同于上面:
void?array(int?a[3][3]){...}
但是在實(shí)際調(diào)用的時(shí)候,你必須傳遞指針:
array(a);
你代碼中傳遞的參數(shù)a[3][3]實(shí)際類型是int(而且已經(jīng)越界),
由于是指定了大小,所以沒必要什么互換了。直接將數(shù)據(jù)copy到另外一個(gè)數(shù)組就OK了~~
如將數(shù)組:
1 2
3 4
5 6
7 8
行列互換后得到: 1 3 5 7
2 4 6 8
如果要在主函數(shù)中輸出互換后的結(jié)果,那就講數(shù)組b定義成全局變量吧…………
#includestdio.h
int b[2][4];
void change(int a[][2])
{
int i=0,j=0;
for(;i4;i++)
{
b[0][i]=a[i][0];
b[1][i]=a[i][1];
}
}
void main()
{
int i=0,j=0;
int a[4][2]={{1,2},{3,4},{5,6},{7,8}};
change(a);
for(j=0;j2;j++)
{
for(i=0;i4;i++)
printf("%d ",b[j][i]);
printf("\n");
}
}
轉(zhuǎn)換干啥,直接寫個(gè)讀取函數(shù)就好了啊、大概就下面這意思。
int Read(int r, int c)
{
return arr[r][c];
}
int ReadAsTransposition(int r, int c)
{
return arr[c][r];
}
給你舉個(gè)例子:矩陣a[2][3]=1 2 3
4 5 6
要求行列互換,那么b[3][2]=1 4
2 5
3 6
程序如下:
#include "stdio.h"
main()
{int a[2][3],i,j,b[3][2];
for(i=0;i2;i++)
for(j=0;j3;j++)
b[j][i]=a[i][j];//現(xiàn)a矩陣的行和列等于轉(zhuǎn)換后b矩陣的列和行;
for(i=0;i3;i++)
for(j=0;j2;j++)
printf("%3d",b[i][j]);
printf("\n");
}
希望樓主能學(xué)會(huì)這個(gè)方法
#include stdio.h
#include stdlib.h
int main()
{? ?int a[3][3]={1,2,3,4,5,6,7,8,9};
int j,i,temp;
for(i=0;i3;i++)
for(j=0;j3;j++)
scanf("%d",a[i][j]);
for(i=1;i2;i++)
for(j=0;j=i;j++)
{
temp=a[i][j];
a[i][j]=a[j][i];
a[j][i]=temp;
}
for(i=0;i3;i++)
for(j=0;j3;j++)
{
printf("%d ",a[i][j]);
if(j==2)printf("\n");
}
return 0;
}
擴(kuò)展資料:
需要說明的是:
1、一個(gè)C語(yǔ)言源程序可以由一個(gè)或多個(gè)源文件組成。
2、每個(gè)源文件可由一個(gè)或多個(gè)函數(shù)組成。
3、一個(gè)源程序不論由多少個(gè)文件組成,都有一個(gè)且只能有一個(gè)main函數(shù),即主函數(shù)。是整個(gè)程序的入口。
4、源程序中可以有預(yù)處理命令(包括include 命令,ifdef、ifndef命令、define命令),預(yù)處理命令通常應(yīng)放在源文件或源程序的最前面。
5、每一個(gè)說明,每一個(gè)語(yǔ)句都必須以分號(hào)結(jié)尾。但預(yù)處理命令,函數(shù)頭和花括號(hào)“}”之后不能加分號(hào)。結(jié)構(gòu)體、聯(lián)合體、枚舉型的聲明的“}”后要加“ ;”。
6、標(biāo)識(shí)符,關(guān)鍵字之間必須至少加一個(gè)空格以示間隔。若已有明顯的間隔符,也可不再加空格來間隔。
參考資料:
百度百科-二維數(shù)組
百度百科-c語(yǔ)言