导航:首页 > 编程知识 > 编程运行时怎么把行的变成列

编程运行时怎么把行的变成列

发布时间:2024-06-27 23:19:59

① c语言编程 将一个随机输入的4*4二维数组逆时针旋转90度后以4行4列输出

直观的算法是动态申请一个同样大小的二维数组,将旋转结果存入,然后再拷贝到原数组并释放临时数组。之所以要动态申请,是考虑到数组较大时别让这个临时用一下的中间数组永久占用内存空间。代码如下:

#include"stdio.h"
#include"stdlib.h"
#defineN4
intmain(intargc,char*argv[]){
intm[N][N],i,j,*p,**q;
p=(int*)malloc(sizeof(int)*N*N);//按一维数组申请临时空间以便于释放
q=(int**)malloc(sizeof(int*)*N);//另申请一个一维指针数组空间
if(!p||!q){
printf("Applicationmemoryfailure,exit... ");
return0;
}
for(j=i=0;i<N;q[i++]=p+j,j+=N);//将指针数组空间组织成二维数组
printf("... ");
for(i=0;i<N;i++){//向二维数组m输入数据并输出
for(j=0;j<N;j++){
scanf("%d",m[i]+j);
printf("%d ",m[i][j]);
}
printf(" ");
}
for(i=0;i<N;i++)
for(j=0;j<N;q[N-1-j++][i]=m[i][j]);//旋转结果存入临时空间
printf(" Aftertherotation: ");
for(i=0;i<N;i++){
for(j=0;j<N;printf("%d ",m[i][j++]=q[i][j]));//将结果复制到m并输出
printf(" ");
}
free(p);//释放临时空间
free(q);//释放指针空间
return0;
}

运行样例如下:

阅读全文

与编程运行时怎么把行的变成列相关的资料

热点内容
手机怎么删除pdf文件 浏览:256
苹果手机没有efs文件夹怎么办 浏览:723
metro软件在哪个文件夹 浏览:69
怎么用手机登录编程猫 浏览:400
文本md204显示器如何编程 浏览:705
如何将表中重复数据标记 浏览:859
中级数据库系统工程师应用技术考什么 浏览:404
博途编程如何设置停止键 浏览:409
python3删除文件内容 浏览:754
如何优化seo数据分析 浏览:132
64位win7下部分32位程序不能运行 浏览:206
dnf90版本剑魂钝器流 浏览:649
陌秀直播苹果怎么下载ipad 浏览:732
简述网络直接市场调查方式有哪些 浏览:683
怎么连接移动网络设置 浏览:781
电脑网卡怎么连接网络连接不上网吗 浏览:838
刷子公司网站怎么做 浏览:272
86版本艾尔文测试 浏览:714
深宫曲文件夹是哪个 浏览:618
苹果u盘修复工具哪个好用 浏览:124

友情链接