c语言行列转换函数 c语言行列互换四行三列

求高手解题!c语言程序题! 写一个函数,将一个3x3的整形二维数组转置,即行列互换。

呵呵,刚刚写好,思想主要就是,在矩阵的上三角中对行与列的调换!可利用双重循环实现,以下是具体参考代码,实现的功能已经抽象成为函数了,你看一下吧://--------------code-------------#includeiostream

牡丹江ssl适用于网站、小程序/APP、API接口等需要进行数据传输应用场景,ssl证书未来市场广阔!成为成都创新互联的ssl证书销售渠道,可以享受市场价格4-6折优惠!如果有意向欢迎电话联系或者加微信:18982081108(备注:SSL证书合作)期待与您的合作!

void MatrixTrun(int a[3][3])

{

int i,j,temp;

for(i=0;i3;i++)

{

for(j=0;ji;j++)

{

temp=a[j][i];

a[j][i]=a[i][j];

a[i][j]=temp;

}

}

}

int main()

{

int A[3][3]={1,2,3,4,5,6,7,8,9};

int i,j,time=0;

printf("矩阵为:");

for(i=0;i3;i++)

{

for(j=0;j3;j++)

{

if(0==time%3)

printf("\n");

printf("%d ",A[i][j]);

time++;

}

}

time=0;

MatrixTrun(A);

printf("\n转置后矩阵为:\n");

for(i=0;i3;i++)

{

for(j=0;j3;j++)

{

if(0==time%3)

printf("\n");

printf("%d ",A[i][j]);

time++;

}

}

return 0;

}//----------------end----------------------附上运行演示截图:

C语言二维数组。行列转换

fun( int a[][3] )

{ int i,j,t;

for( i=0;i3;i++ )

for( j=0;ji;j++ )

{ t=a[i][j];

a[i][j]=a[j][i];

a[j][i]=t;

}

}

main()

{ int a[3][3]={.....},i,j;

fun(a);

for( i=0;i3;i++ )

{ for( j=0;j3;j++ )

printf("%4d",a[i][j]);

printf("\n");

}

}

C语言,使一个3*3的数组转置,即行列互换

#include stdio.h

int main()

{

int a[3][3], b, c, d;

for (b = 0; b3; b++)

for (c = 0; c3; c++)

scanf("%d",a[b][c]);

printf("\n");

for (b = 0; b3; b++)

for (c = b+1; c3; c++)

{

d = a[b][c];

a[b][c] = a[c][b];

a[c][b] = d;

}

for (b = 0; b3; b++)

{for (c = 0; c3; c++)

printf("%d ",a[b][c]);

printf("\n");

}

return 0;

}

C语言 函数调用写一个函数,使给定的一个3*3的二维整型数组转置,即行列互换。

方法一、

#includelt;stdio.hgt;

void main(){

void switchArray(int[3][3]);

int array[][3]={{1,2,3},{4,5,6},{7,8,9}};

int i,j;

switchArray(array);

return 0;

}

void switchArray(int array[][3]){

int newArray[3][3];

int i,j;

for(i=0;ilt;3;i++){

for(j=0;jlt;3;j++){

newArray[j]lt;igt;=arraylt;igt;[j];

}

}

for(i=0;ilt;3;i++){

for(j=0;jlt;3;j++){

printf("%d",newArraylt;igt;[j]);

}

printf("\n");

}

}

方法二、用指针实现:

#includelt;stdio.hgt;

void main(){

void switchArray(int[3][3]);

int array[][3]={{1,2,3},{4,5,6},{7,8,9}};

int i,j;

int(*pToArray)[3];

pToArray=array;

switchArray(pToArray);

return 0;

}

void switchArray(int array[][3]){

int newArray[3][3],(*pTArr)[3],(*pTNewArr)[3];

int i,j;

pTArr=array;

pTNewArr=newArray;

for(i=0;ilt;3;i++){

for(j=0;jlt;3;j++){

*(*(pTNewArr+j)+i)=*(*(pTArr+i)+j);

}

}

for(i=0;ilt;3;i++){

for(j=0;jlt;3;j++){

printf("%d",*(*(pTNewArr+i)+j));

}

printf("\n");

}

}

扩展资料:

用法:

1、printf()函数是格式化输出函数,一般用于向标准输出设备按规定格式输出信息。

格式输出,它是c语言中产生格式化输出的函数(在stdio.h中定义)。用于向终端(显示器、控制台等)输出字符。格式控制由要输出的文字和数据格式说明组成。

要输出的文字除了可以使用字母、数字、空格和一些数字符号以外,还可以使用一些转义字符表示特殊的含义。

简单点理解就是,在一段程序中你正确使用该函数,可以在该程序运行的时候输出你所需要的内容。

2、printf函数是一个标准库函数,它的函数原型在头文件“stdio.h”中。但作为一个特例,不要求在使用printf函数之前必须包含stdio.h文件。

printf()函数的调用格式为:printf("lt;格式化字符串gt;",lt;参量表gt;)。

其中格式化字符串用于指定输出格式。格式控制串可由格式字符串和非格式字符串两种组成。


网站题目:c语言行列转换函数 c语言行列互换四行三列
文章源于:http://azwzsj.com/article/ddichih.html