當前位置:首頁 » 編程語言 » C語言橫變列

C語言橫變列

發布時間: 2022-12-26 11:00:53

c語言:二維數組行列互換

由於行、列不確定,所以要動態處理。舉例代碼如下:

//#include"stdafx.h"//Ifthevc++6.0,withthisline.
#include"stdio.h"
#include"stdlib.h"
intmain(void){
int**a,**b,m,n,i,j;
while(1){//保證輸入的行、列數為正數
printf("Pleaseenterm&n(intm>0,n>0)... ");
if(scanf("%d%d",&m,&n),m>0&&n>0)
break;
printf("Error,redo:");
}
a=(int**)malloc((j=sizeof(int))*m);
b=(int**)malloc(j*n);
if(a==NULL||b==NULL){
printf("Applicationmemoryfailure... ");
exit(0);
}
for(i=0;i<m;i++)
if((a[i]=(int*)malloc(j*n))==NULL){
printf("Failedtocreatethearray... ");
exit(0);
}
for(i=0;i<n;i++)
if((b[i]=(int*)malloc(j*m))==NULL){
printf("Failedtocreatethearray... ");
exit(0);
}
for(i=0;i<m;i++)
for(j=0;j<n;scanf("%d",a[i]+j++));
printf(" ");
for(i=0;i<n;i++){
for(j=0;j<m;j++)
printf("%d",b[i][j]=a[j][i]);//a的行、列互換後存入b
printf(" ");
}
for(i=0;i<m;free(a[i++]));
free(a);
for(i=0;i<n;free(b[i++]));
free(b);
return0;
}

Ⅱ c語言中如何將行輸入轉換成列輸入

#include<stdio.h>
void print(int n[5][5])
{
int i, j;
for(i = 0; i < 5; i++)
{
for(j = 0; j < 5; j++)
{
printf("%d\t",n[i][j]);
}
printf("\n");
}
}
void zx1(int n[5][5]) /*以表格的中線旋轉 11-15 */
{
int i, j;
int m;
for(i = 0; i < 2; i++)
{
for(j = 0; j < 5; j++)
{
m = n[i][j];
n[i][j] = n[4-i][j];
n[4-i][j] = m;
}
}
}
void zx2(int n[5][5]) /*以表格的中線旋轉 3-23*/
{
int i, j;
int m;
for(i = 0; i < 2; i++)
{
for(j = 0; j < 5; j++)
{
m = n[j][i];
n[j][i] = n[j][4-i];
n[j][4-i] = m;
}
}
}
void djx1(int n[5][5]) /*對角線1-25*/
{
int i, j;
int m;
for(i = 0; i < 5; i++)
{
for(j = i; j < 5; j++)
{
m = n[i][j];
n[i][j] = n[j][i];
n[j][i] = m;
}
}
}
void djx2(int n[5][5]) /*對角線21-5*/
{
int i, j;
int m;
for(i = 0; i < 4; i++)
{
for(j = 0; j < 4-i; j++)
{
m = n[i][j];
n[i][j] = n[4-j][4-i];
n[4-j][4-i] = m;
}
}
}
int main()
{
int n[5][5]=;
print(n);
djx2(n);
print(n);
getch();
}

Ⅲ c語言將橫版英文變為豎版,

最簡單的方法,就是把文章保存到二維數組,然後列、行嵌套循環列印就行。

#include<stdio.h>
#include<string.h>
#defineROW3//字元串列數
intmain()
{
inti,j,flag;
charstr[][10]={"aaabbbbb","eeefff","iiiijjjj"};
printf("原文章: ");
for(i=0;i<ROW;i++)
printf("%s ",str[i]);

printf(" 變成豎版: ");
j=0;
while(1)
{
flag=ROW;
for(i=0;i<ROW;i++)
{
if(j<=strlen(str[i])-1)
printf("%c",str[i][j]);
else
printf(""),flag--;
}
printf(" ");
if(!flag)//所有行最後一位都已列印,結束列循環
break;
j++;
}
return0;
}

Ⅳ c語言數組橫向和縱向互相轉換 應該怎麼編求大神幫忙

#include "stdio.h"
#include "conio.h"
#define N 9
int main()
{
int a[N][N];
int i,j,k=0;
for(i=0;i<N;i++)
for(j=0;j<N;j++)
a[i][j]=k++;

for(i=0;i<N;i++){
for(j=0;j<N;j++)
printf("%4d",a[i][j]);
printf("\n");
}

for(i=0;i<N;i++)
for(j=0;j<i;j++){
k=a[i][j];
a[i][j]=a[j][i];
a[j][i]=k;
}

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

Ⅳ c語言怎麼將橫著的文字變豎

這是你選擇編譯系統的字體,選錯了。
請把字體名字前的"@黑體",改為"黑體"。(具體哪種體不重要,重要的是去掉那個"@")

Ⅵ 使用C語言實現一個位元組縱向排列(低位在上、高位在下)轉換橫向排列(高位在左、低位在右)

假定這個數在b,
依次對B的最低對2取余,然後放到a位元組,然後取8次,就地位變成高位了
a=0;
for (i=0;i<8;i++)
{
if (b%2==1)
a=a+1;
a=a*2;
b=b\2;
}

熱點內容
百度雲下載文件夾 發布:2025-05-18 03:17:33 瀏覽:674
php雲開發 發布:2025-05-18 03:12:41 瀏覽:447
sql語句顯示表 發布:2025-05-18 03:12:30 瀏覽:690
資料庫系統的例子 發布:2025-05-18 03:02:42 瀏覽:191
數字化儲存與編譯是什麼 發布:2025-05-18 02:56:55 瀏覽:217
個人網站模板源碼 發布:2025-05-18 02:51:17 瀏覽:490
主伺服器ip地址 發布:2025-05-18 02:46:29 瀏覽:856
電腦配置太低玩不了絕地求生怎麼辦 發布:2025-05-18 02:38:39 瀏覽:797
存儲過程怎麼出錯了 發布:2025-05-18 02:37:16 瀏覽:368
32寸演算法 發布:2025-05-18 02:22:14 瀏覽:744