-
#include
#include
#include
void main()
int i,j;
int a[5][4];
int temp[5]=;
srand(time(00));隨機種子。
for(i=0;i<5;i++) 生成矩陣。
for(j=0;j<4;j++)
a[i][j]=rand()%100;
printf("原始矩陣:");
for(i=0;i<5;i++) 輸出原始矩陣。
for(j=0;j<4;j++)
printf("%d ",a[i][j]);
printf("");
for(i=0;i<5;i++) 求線的總和。
for(j=0;j<4;j++)
temp[i]=temp[i]+a[i][j];
int max=0;確定並最大化行號。
for(i=0;i<5;i++)
if(temp[i]>temp[max])max=i;
if(max==0) 交換行。
for(i=0;i<5;i++)
temp[i]=a[4][i];
a[4][i]=a[max][i];
a[max][i]=temp[i];
elsefor(i=0;i<5;i++)
temp[i]=a[max-1][i];
a[max-1][i]=a[max][i];
a[max][i]=temp[i];
printf("換貨後:");切換後矩陣的輸出。
for(i=0;i<5;i++)
for(j=0;j<4;j++)
printf("%d ",a[i][j]);
printf("");
-
*你的陣列可能不小心把列理解為一行,導致結果不理想,原來的問題是用第一行元素反轉行的最大值,但我還是按照你的標題改了一下,盡量不要多次使用temp,因為他用的是最大行下標, 我用乙個變數 *
#include
#include
#include
void main()
int i,j;
int a[5][4];
int t,temp[5]=;
srand(time(00));隨機種子。
for(i=0;i<5;i++) 生成矩陣。
for(j=0;j<4;j++)
a[i][j]=rand()%100;
printf("原始矩陣:");
for(i=0;i<5;i++) 輸出原始矩陣。
for(j=0;j<4;j++)
printf("%2d ",a[i][j]),temp[i]=temp[i]+a[i][j];
printf("(%d) 和 %d",i,temp[i]);
for(i=0;i<5;i++) 求線的總和。
int max=0;確定並最大化行號。
for(i=0;i<5;i++)
if(temp[i]>temp[max])max=i;
if(max==0) 交換行。
for(j=0;j<4;j++)
t=a[4][j];
a[4][j]=a[max][j];
a[max][j]=t;
elsefor(j=0;j<4;j++)
t=a[max][j];
a[max][j]=a[max-1][j];
a[max-1][j]=t;
printf("換貨後:");切換後矩陣的輸出。
for(i=0;i<5;i++)
for(j=0;j<4;j++)
printf("%2d ",a[i][j]);
printf("");
-
裡面有個小問題,希望你能解決,早點告訴我!!
#include
#include
#include
void main()
int i,j;
int a[5][4];
int temp[5]=;
srand(time(00));隨機種子。
for(i=0;i<5;i++) 生成矩陣。
for(j=0;j<4;j++)
a[i][j]=rand()%100;
printf("原始矩陣:");
for(i=0;i<5;i++) 輸出原始矩陣。
for(j=0;j<4;j++)
printf("%d ",a[i][j]);
printf("");
for(i=0;i<5;i++) 求線的總和。
for(j=0;j<4;j++)
temp[i]=temp[i]+a[i][j];
int max=0;確定並最大化行號。
for(i=0;i<5;i++)
if(temp[i]>temp[max])max=i;
if(max==0) 交換行。
for(i=0;i<5;i++)
temp[i]=a[4][i];
a[4][i]=a[max][i];
a[max][i]=temp[i];
elsefor(i=0;i<5;i++)
temp[i]=a[max-1][i];
a[max-1][i]=a[max][i];
a[max][i]=temp[i];
printf("換貨後:");切換後矩陣的輸出。
for(i=0;i<5;i++)
for(j=0;j<4;j++)
printf("%d ",a[i][j]);
printf("");
-
總結。 您好,兩個矩陣是使用隨機數生成的(資料不一定相同,前者在 30-70 範圍內,後者在 101-135 範圍內)。
1)將兩個矩陣的總和放入C矩陣中。
for i = 1 to 4
for j = 1 to 4
c(i, j) =a(i, j) +b (i, j)
next j
next i
使用隨機數生成具有 5 行 5 列的整形矩陣,以及輸出矩陣中元素的最大值和最大值所在的位置。
你好,用隨機數生成兩個矩陣(資料不一定是同乙個鍵,前者在30-70範圍內,後者在101-135範圍內)(幹平衡1)將兩個矩陣相加,把結果放到c矩陣中。 for i = 1 to 4for j = 1 to 4c(i, j) =a(i, j) +b (i, j)next jnext i
封閉式答案 2)將 A 矩陣轉換為 i = 2 到 4,因為 j = 1 到 i 鄭志 1t = a(i, j): a(i, j) =a(j, i): a(j, i) =tnext jnext i
最大值和下標 dim max%,最大值%,最大值j%max = c(1, 1): maxi = 0: maxj = 0for i = 1 到 4for j = 1 到 4if c(i, j) >max thenmax = c(i, j):
maxi = i: maxj = jend ifnext jnext i
希望我的對你有幫助。