马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 haiouda 于 2015-3-20 14:58 编辑 /****************************************
写一个函数,将一个 3*3 的整型矩阵转置。
****************************************/
#include <stdio.h>
#define xx 4 //设置矩阵大小
#define xx1 10 //设置矩阵单元大小
int main()
{
char temp,a[xx][xx][xx1]={0},*c[xx*xx],*d[xx*xx];
int i,k,p,j=0;
for (i=0;i<xx;i++) //输入矩阵,每次回车,代表一个字符串(矩阵单元)输入结束
{
for (k=0;k<xx;k++,j++)
{
c[j]=a[i][k];
for (p=0;p < xx1 ;p++)
{
temp=getchar();
if(temp=='\n')
{
a[i][k][p]='\0';
break;
}
a[i][k][p]=temp;
}
}
}
printf("\n");
for(k=0,j=0;k<xx;k++) //矩阵顺时针旋转90度
{
for(i=xx-1;i>=0;i--,j++)
{
d[j]=a[i][k];
}
}
for (j=0,k=1;j<xx*xx;j++,k++)
{
printf("%s ",c[j]); // 打印原矩阵
if (k%xx==0)
{
printf("\n");
}
}
printf("\n");
for (j=0,k=1;j<xx*xx;j++,k++) //打印旋转后的矩阵
{
printf("%s ",d[j]);
if (k%xx==0)
{
printf("\n");
}
}
return 0;
}
课后练习,费了我好几小时脑细胞,终于搞出来了:big
|