對於 5 或 4 的矩陣,為 100 以內的整數呼叫隨機函式

發布 科技 2024-03-08
4個回答
  1. 匿名使用者2024-01-26

    #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("");

  2. 匿名使用者2024-01-25

    *你的陣列可能不小心把列理解為一行,導致結果不理想,原來的問題是用第一行元素反轉行的最大值,但我還是按照你的標題改了一下,盡量不要多次使用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("");

  3. 匿名使用者2024-01-24

    裡面有個小問題,希望你能解決,早點告訴我!!

    #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("");

  4. 匿名使用者2024-01-23

    總結。 您好,兩個矩陣是使用隨機數生成的(資料不一定相同,前者在 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

    希望我的對你有幫助。

相關回答
8個回答2024-03-08

如果你不重複,我會給你乙個更經典的**。

int a[35]; >>>More

18個回答2024-03-08

1.隨機生成:random表示隨機,如random(100); 指隨機生成 0 99 的整數。 >>>More

25個回答2024-03-08

這是整個過程。

1 建立標頭檔案 原始檔。 >>>More

10個回答2024-03-08

建議您使用 strace 來檢視執行緒是否完全卡住。 >>>More

10個回答2024-03-08

系統呼叫和一般函式呼叫有很多區別,下面我們慢慢總結一下。 >>>More