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