#include
#include
int main()
{ int a[100]={0},x,i,j;
srand((unsigned) time(NULL)); //用时间做种子,每次产生随机数不一样
for(i=0;i<20;i++)
{
x=rand()%90+10; //产生10-99的随机数;
a[x]++;
}
for(i=99;i>=0;i--) //从大到小输出
for(j=0;j printf("%d ",i);
printf ("\n");
system("pause");
return 0;
}
cmd里有个环境变量%random%可以产生0到32767之间的随机数,这样就可以用通用的公式%random%%%(max-min+1)+min来产生[min,max]区间里的随机数,批处理中求模得用两个%%符号,例子:
@REM 产生10个[4,12]间的随机数
@echo off
REM 启用延迟环境变量扩展
setlocal enabledelayedexpansion
REM 设置随机数的最小和最大值以及求模用的变量
set min=4
set max=12
set /a mod=!max!-!min!+1
for /l %%i in (1,1,10) do (
REM 产生[min,max]之间的随机数
set /a r=!random!%%!mod!+!min!
echo.
echo 随机数%%i:!r!
用什么语言编程?
#include
#include
#include
int main()
{
int a[100]={0},b;
int i;
srand(time(NULL));
for(i=0;i<20;i++)
{
b = rand()%90+10;
a[b]++;
}
for(i=99;i>=10;i--)
{
while(a[i]--)
{
printf("%d ",i);
}
}
printf("\n");
return 0;
}
for(i=1;i<=n-1;i++ )
{
x=a[i] ;
j=i-1; //(1)
while(j>=0 && a[j]> x ) //(2)
{
a[j+1]=a[j];
j--; //(3)
}
a[j+1]=x ;
}