c語言隨機數組並排序,c語言生成隨機數並排序

本文目錄一覽:

用C語言如何將一個一維數組中的元素隨機排序

#include

#include

#include

intmain()

{

inti,j,n,k,t,a[100];

srand((unsigned)time(NULL));

p

利用rand()函數產生隨機數字,rand()%n產生小於n的隨機數,然後交換。

運行的結果:

#include

#include

intmain()

{

intnbs

利用rand()函數產生隨機數字,rand()%n產生小於n的隨機數,然後交換。

擴展資料

C語言排序法

在一層循環找出最小數的下標,該下標用min保存,直到比較完整個數組,即可找到最小的數,然後將該數放入數組的第一位。

這樣只能排好一個元素,於是需要再嵌套一層外層循環即可排好所有元素。第二次循環就不用再比較第一個元素了,因為第一個元素已經排好,依次類推,每一次循環就會排好一個,進行n-1次循環即可排好所有元素。

C語言 隨機數組排序

#include “stdlib.h”

#include “stdio.h”

main()

{

int i,j,k,a[10000],b[10000],n,t;

printf(“please input the number of integer: “);

scanf(“%d”,n);

for(i = 0; i n; i++)

{

a[i] = random(80) + 20; /*生成數組*/

}

for(i = 0;i n;i++) /*初始化元素數量*/

b[i] = 1;

for(i = 0; i n; i++)

{

for(j = i + 1;j n;j++)

{

if(a[i] == a[j])

{

b[i]++; /*計數*/

n–;

for(k = j;k n;k++) /*去掉數組中重複值*/

a[k] = a[k + 1];

j–;

}

}

}

for(i = 1;i n;i++) /*升序排序*/

for(j = 0;j n – i;j++)

if(a[j] a[j+1])

{

t = a[j];a[j] = a[j + 1];a[j + 1] = t;

t = b[j];b[j] = b[j + 1];b[j + 1] = t;

}

printf(“\n Integer numbers\n”);

for(i = 0;i n;i++) /*輸出*/

{

printf(” %d %d\n”,a[i],b[i]);

}

getch();

}

C語言數組隨機賦值排序

#include stdio.h

#include stdlib.h

int cmp(const void* a, const void* b)

{

return *(int*)a – *(int*)b;

}

int main()

{

int k, i;

int* arr;

printf(“請輸入一個3位數作為一維數組的維數:”);

scanf(“%d”, k);

printf(“生成隨機數組:\n”);

arr = (int*)malloc(k * sizeof(int));

for(i = 0; i k; ++i)

{

arr[i] = rand();

printf(“%d “, arr[i]);

}

printf(“\n”);

printf(“排序後的數組:\n”);

qsort(arr, k, sizeof(int), cmp);

for(i = 0; i k; ++i)

{

printf(“%d “, arr[i]);

}

printf(“\n”);

return 0;

}

c語言如何把一組連續的數隨機排開

1 定義一個輔助數組,和原本數組中總數相同。

2 對輔助數組進行隨機賦值。

3 對輔助數組進行排序,交換數據時,同時交換源數組中的相同位置。

4 當輔助數組有序後,源數組已經完成隨機排序。

代碼如下:

void radom_sort(int *a, int l)

{

    int *b;

    int i,j,t;

    b = (int*)malloc(sizeof(int)*l);

    srand(time(NULL));

    for(i = 0; i  l; i ++)

        b[i] = rand();

    for(i = 0; i  l-1; i ++)

        for(j = i + 1; j  l; j ++)

        {

            if(b[i]b[j])

            {

                t = b[i];

                b[i] = b[j];

                b[j] = t;

                t = a[i];

                a[i] = a[j];

                a[j] = t;

            }

        }

}

。c語言隨機一個數組,並排序輸出,我是新手,別笑我,大神幫我看看哪裡錯了

選擇排序。應該是a[min]與a[i]交換,而不是a[j]與a[i]。代碼:

#includestdio.h

#includestdlib.h

#includetime.h

int main()

{

    int a[10],min,i,j;

    unsigned int k;

    srand((unsigned)time(0));

    printf(“原隨機數組位:”);

    for(i=0;i10;i++)

        printf(“%d “,a[i]=rand());

    for(i=0;i9;i++)

    {

        min=i;

        for(j=i+1;j10;j++) 

        {

            if(a[j]a[min]) min=j;

        }

        k=a[i];

        a[i]=a[min]; //!!!! 交換a[i] 與 a[min]

        a[min]=k;  //!!!!!

    }

    printf(“\n排序後數組為:”);

    for(i=0;i10;i++)

        printf(“%d “,a[i]);

    putchar(‘\n’); //!!少了一個’

    system(“pause”);

    return 0;

}

誰都是從新手開始的,請加油~~~

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/237414.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-12 12:05
下一篇 2024-12-12 12:05

相關推薦

  • Python導入數組

    本文將為您詳細闡述Python導入數組的方法、優勢、適用場景等方面,並附上代碼示例。 一、numpy庫的使用 numpy是Python中一個強大的數學庫,其中提供了非常豐富的數學函…

    編程 2025-04-29
  • AES加密解密算法的C語言實現

    AES(Advanced Encryption Standard)是一種對稱加密算法,可用於對數據進行加密和解密。在本篇文章中,我們將介紹C語言中如何實現AES算法,並對實現過程進…

    編程 2025-04-29
  • Python返回數組:一次性搞定多種數據類型

    Python是一種多用途的高級編程語言,具有高效性和易讀性的特點,因此被廣泛應用於數據科學、機器學習、Web開發、遊戲開發等各個領域。其中,Python返回數組也是一項非常強大的功…

    編程 2025-04-29
  • Python生成隨機數的應用和實例

    本文將向您介紹如何使用Python生成50個60到100之間的隨機數,並將列舉使用隨機數的幾個實際應用場景。 一、生成隨機數的代碼示例 import random # 生成50個6…

    編程 2025-04-29
  • 學習Python對學習C語言有幫助嗎?

    Python和C語言是兩種非常受歡迎的編程語言,在程序開發中都扮演着非常重要的角色。那麼,學習Python對學習C語言有幫助嗎?答案是肯定的。在本文中,我們將從多個角度探討Pyth…

    編程 2025-04-29
  • Python去掉數組的中括號

    在Python中,被中括號包裹的數據結構是列表,列表是Python中非常常見的數據類型之一。但是,有些時候我們需要將列表展開成一維的數組,並且去掉中括號。本文將為大家詳細介紹如何用…

    編程 2025-04-29
  • Python操作數組

    本文將從多個方面詳細介紹如何使用Python操作5個數組成的列表。 一、數組的定義 數組是一種用於存儲相同類型數據的數據結構。Python中的數組是通過列表來實現的,列表中可以存放…

    編程 2025-04-29
  • Python被稱為膠水語言

    Python作為一種跨平台的解釋性高級語言,最大的特點是被稱為”膠水語言”。 一、簡單易學 Python的語法簡單易學,更加人性化,這使得它成為了初學者的入…

    編程 2025-04-29
  • 如何使用random生成不重複的隨機數

    在編程開發中,我們經常需要使用隨機數來模擬一些場景或生成一些數據。但是如果隨機數重複,就會造成數據的不準確性。這時我們就需要使用random庫來生成不重複且隨機的數值。下面將從幾個…

    編程 2025-04-29
  • OpenJudge答案1.6的C語言實現

    本文將從多個方面詳細闡述OpenJudge答案1.6在C語言中的實現方法,幫助初學者更好地學習和理解。 一、需求概述 OpenJudge答案1.6的要求是,輸入兩個整數a和b,輸出…

    編程 2025-04-29

發表回復

登錄後才能評論