當前位置:首頁 » 編程語言 » 四位數怎麼隨機排序C語言
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

四位數怎麼隨機排序C語言

發布時間: 2022-06-07 17:19:31

c語言中怎樣隨機產生一個四位數

這個就是隨即產生4位數 rand()%10000
記的頭文件聲明stdlib.h 不然rand函數沒法用的

❷ 用c語言,隨機輸入4個數,按從大到小的順序輸出

void main()
{int i,j,t;
int a[4];
for(i=0;i<4;i++)
scanf("%d",&a[i]);
for(i=0;j<3;j++)
for(i=0;i<3-j;i++)
if(a[i]<a[i+1])
{t=a[i];a[i]=a[i+1];a[i+1]=t}
for(i=0;i<10;i++)
primtf("%d",a[i]);
}記得採納啊

❸ c語言4個數排序怎麼弄

不用數組就比較麻煩了
代碼簡不了
main()
{
int
a,b,c,d,t;
/*
四個數
和一個中間變數
*/
/*
這里任意賦值
*/
a=222;
b=10;
c=102;
d=99;
/*
從小到大排
*/
if(
a
>
b
)
{
t
=
a;
a
=
b;
b
=
t;
}
/*
判斷a和b
*/
if(
b
>
c
)
{
t
=
b;
b
=
c;
c
=
t;
}
/*
判斷b和c
*/
if(
c
>
d
)
{
t
=
c;
c
=
d;
d
=
t;
}
/*
判斷c和d
*/

/*
現在d是最大的,已經排到最後了 接下來只用排a
b
c */
if(
a
>
b
)
{
t
=
a;
a
=
b;
b
=
t;
}
/*
判斷a和b
*/
if(
b
>
c
)
{
t
=
b;
b
=
c;
c
=
t;
}
/*
判斷b和c
*/

/*
現在c也是a
b
c
中最大的
再比較a
b就行*/
if(
a
>
b
)
{
t
=
a;
a
=
b;
b
=
t;
}
/*
判斷a和b
*/
/*
排完,輸出
*/
printf("%d
%d
%d
%d\n",
a,
b,
c,
d);
}
/*
本例採用的是冒泡法排序思路
*/

❹ C語言生成N個隨機四位數並按降序排列,排序前後分別輸出這N個數且每10個換一行,排序用選擇排序演算法

#include<stdio.h>
#include<stdlib.h>
#include<time.h>
#define N 100
int a[N];
void inputa(){
srand(time(0));
for(int i=0;i<N;i++)
a[i]=rand()%9000+1000;
}
void outa(){
for(int i=0;i<N;i++){
printf("%d",a[i]);
if((i+1)%10)printf("\t");
else printf("\n");
}
}
void swap(int &a,int &b){
int t =a;
a=b; b=t;
}
void sort(){
int tmp;
for(int i=0;i<N-1;i++)
for(int j=i+1;j<N;j++)
if(a[i]<a[j])swap(a[i],a[j]);
}
int main(){
inputa();
sort();
outa();
}

❺ C語言編程題:輸入4個整數,要求按由小到大順序輸出怎麼編啊

使用冒泡排序法進行編程:

解釋:

1.第一個for循環:利用數組循環輸入4個變數。

2.第二個for循環:該循環的意思是如果a[0]>a[1]的話,兩個變數的值交換,利用循環依次比較。要注意的是i<3,因為其中有i+1,i最大取到2,也就是i+1最大取到3才正確。

3.第三個for循環:利用循環依次輸出排序後的數組,每輸出一個加一個空格以便於區分。

(5)四位數怎麼隨機排序C語言擴展閱讀:

冒泡排序法,從數組頭部開始,不斷比較相鄰的兩個元素的大小,通過交換兩個元素的值使較大的元素逐漸往後移動,直到數組的末尾。

經過第一輪的比較,就可以找到最大的元素,並將它移動到最後一個位置。第一輪結束後,繼續第二輪。仍然從數組頭部開始比較,讓較大的元素逐漸往後移動,直到數組的倒數第二個元素為止。

經過第二輪的比較,就可以找到次大的元素,並將它放到倒數第二個位置。

以此類推,進行 n-1(n 為數組長度)輪「冒泡」後,就可以將所有的元素都排列好。

❻ C語言四個數從小到大排序

# include <stdio.h>void main (){ int t,a,b,c,d;printf("請輸入4個數;");

scanf("%d,%d,%d,%d",&a,&b,&c,&d);

printf("a=%d,b=%d,c=%d,d=%d ",a,b,c,d);

if(a>b) {t=a;a=b;b=t;}if(a>b) {t=a;a=b;b=t;}}

❼ C語言:隨機生成N個四位數並按降序排列,分別輸出排序前後的N個數且每行10個;排序用選擇法;怎麼寫

代碼文本:

#include "stdio.h"

#include <stdlib.h>

#include "time.h"

#define N 37

int main(int argc,char *argv[]){

int a[N];

void myset(int *,int);

void mysort(int *,int);

void myout(int *,int,int x=0);

myset(a,N);

myout(a,N);

mysort(a,N);

myout(a,N,1);

return 0;

}

void myset(int *p,int n){//隨機數生成函數

srand((unsigned)time(NULL));

for(n--;n>=0;p[n--]=rand()%9000+1000);

}

void mysort(int *p,int n){//選擇法排序

int i,j,k;

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

for(k=i,j=k+1;j<n;j++)

if(p[k]<p[j])

k=j;

if(k-i)

j=p[k],p[k]=p[i],p[i]=j;

}

}

void myout(int *p,int n,int x=0){//輸出函數

int i,k;

puts(x==0 ? "Before ordering:" : "After ordering:");

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

printf(++k%10 ? "%5d" : "%5d ",p[i]);

if(k%10)

putchar(' ');

}

供參考……

❽ C語言中怎麼對數組隨機排序

可以用一個輔助數組進行隨機排序,方法如下:

1 獲取要排序的數組長度L。
2 定義整型的輔助數組,長度為L。
3 生成L個隨機整型數字,存與輔助數組中,這樣要排序數組和輔助數組就是一一對應的了。
4 對輔助數組排序,排序過程中,當改變輔助數組中數字的位置時,同步改變要隨機排序的原數組中對應的元素位置。比如為排序交換輔助數組的第三個和第五個元素,那麼就要同時交換原數組中的第三個和第五個元素。
5 當輔助數組排序完成後,原數組中的值就是隨機順序了。
6 刪除輔助數組。

❾ c語言產生4位隨機數

可以將生成的隨機數放入數組中,每次遍歷數組,有相同的重新生成隨機數。知道生成4個即退出循環。

#include <stdio.h>
#include <stdlib.h>
#include <time.h>

int main()
{
int num[4], cnt = 0, n;
srand(clock()); // 設置隨機數種子
while (cnt < 4)
{
n = rand() % 4; // 生成4以內隨機數,這樣更利於測試
for (int i = 0; i < cnt; i++)
if (num[i] == n) // 遍歷數組,有相同的重新生成隨機數
continue;
num[cnt++] = n;
}
for (int i = 0; i < cnt; i++) // 列印隨機數數組
printf("%d ", num[i]);
return 0;
}