这是我大约14年4月份初用rand()的一个新尝试,所以我觉得有必要记录一下,其实我就是想充实一下blog,功能为生成符合条件的随机数,稍微会点编程的人请无视。。。
随机生成100人成绩,90分以上3个,80-90分12个,70-80分45个,60-70分35个,60分以下5个
<strong>#include <time.h>
#include <iostream>
using namespace std;
void main()
{
int num[100],choice[5];
int i=0;
while (i<=4)
{
choice[i]=1;
i++;
}
i=0;
srand ((unsigned)time(NULL));
while (i<=99)
{
switch ((rand()%5))
{
case 0:if (choice[0]<=3)
{
choice[0]++;num[i]=90+rand()%11;i++;
break;
}
else break;
case 1:if (choice[1]<=12)
{
choice[1]++;num[i]=80+rand()%11;i++;
break;
}
else break;
case 2:if (choice[2]<=45)
{
choice[2]++;num[i]=70+rand()%11;i++;
break;
}
else break;
case 3:if (choice[3]<=35)
{
choice[3]++;num[i]=60+rand()%11;i++;
break;
}
else break;
case 4:if (choice[4]<=5)
{
choice[4]++;num[i]=10+rand()%50;i++;
//考个位数分数的人很少吧,所以我设置最低为10分
break;
}
else break;
}
}
}
//上面的一大段都是生成100个符合条件的随机数</strong>