❶ 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;
}