您的位置:

c语言随机成绩,随机产生30个学生的c语言成绩

本文目录一览:

C语言中产生随机数

随机数主要有两个函数

一个种子产生函数

void

srand(int);

一个随机数产生函数

int

rand();

当我们要产生随机数的时候,首先我们生成一个随机数种子(注意相同的种子产生的随机数序列是一样的)

然后使用rand()函数得到随机数

祝你好运

C语言:随机产生序号和成绩,为6个结构体数组的元素排序。咋写?

代码文本:

#include "stdio.h"

#include stdlib.h

#include "time.h"

struct A{

int S_N,score;

};

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

A stu[10],t;

char i,j,k;

printf("随机输入情况...\n");

srand((unsigned)time(NULL));

for(i=0;i6;i++){

stu[i].S_N=rand();

for(j=0;ji;j++)

if(stu[i].S_N==stu[j].S_N){

i--;

break;

}

stu[i].score=rand()%51+50;

printf("%05d %4d  ",stu[i].S_N,stu[i].score);

}

printf("\n\n按学号由小到大排序...\n");

for(i=0;i6;i++){

for(k=i,j=k+1;j6;j++)

if(stu[k].S_Nstu[j].S_N)

k=j;

if(i!=k)

t=stu[k],stu[k]=stu[i],stu[i]=t;

printf("%05d %4d  ",stu[i].S_N,stu[i].score);

}

printf("\n\n按成绩由大到小排序...\n");

for(i=0;i6;i++){

for(k=i,j=k+1;j6;j++)

if(stu[k].scorestu[j].score)

k=j;

if(i!=k)

t=stu[k],stu[k]=stu[i],stu[i]=t;

printf("%05d %4d  ",stu[i].S_N,stu[i].score);

}

puts("\n");

return 0;

}

C语言如何编程产生随机数

楼主你好!

很高兴回答你的问题!

#includestdio.h

#includewindows.h

#includetime.h

#includestdlib.h

int main()

{

int num;

srand((unsigned)time(NULL));

num = rand()%100+1;

printf("%d\n",num);

return 0;

}

上面的是参数一个1到100之间的随机数的例子!主要用到rand()函数,它能够随机参数一个0到unsigned int的最大值之间的一个随机数,我们可以通过%控制随机数参数的范围!在使用rand()需要调用srand()种子器,不然你每次得到都是同一个数!具体用法可以去网上查查!

希望我的回答对你有帮助!

望采纳!谢谢!

如何在C语言中生成一定范围内的随机数?

srand((int)time(NULL));设定随机数种子

rand()%100;产生0-99的随机数。

高级点的,假如要产生16-59之间的数,你可以这样写:rand()%44+16(这里44由59-16+1得到)。其他情况如法炮制!

C语言中用rand()函数产生20-90的随机整数

20-90共有71个数字,所以是rand()%71+20 ;

用rand()生成-20-20的随机数

-20-20共有41个数字,所以是rand()%41-20;

需要注意的是,在运行以上代码之前最好设定一下:

srand(time(NULL));//用系统当前时间设置rand()随机序列种子,保证每次运行随机序列不一样

在C语言中如何产生随机数

假设要生成的随机数是大于等于20且小于等于100的整数

#includestdio.h

#includetime.h

#includestdlib.h

void main() { int a,b,x;

  a=20; b=100;

  srand((unsigned int)time(NULL)); //用当前时间生成一个随机数种子

  x=rand()%(b-a+1)+a;

  printf("得到一个随机数:%d\n",x);

}