C语言问题(1分钟内随机产生1000个随机数),请教!

作者&投稿:素斌 (若有异议请与网页底部的电邮联系)
C语言问题(产生100个随机数,但是这100个产生得数的和不超过1000),请教!~

int result=0,num,i=1;
1 生成一个随机数(可用库函数)赋给num
2 result+=num;
3 1000-result>(100-i)吗,如是转第5步
4 result-=num;转第1步
5 i++;
6 i<100吗,如是转第1步

单从解决你这道问题来说也不算慢啦^_^

#include
#include
#include
#include

main()
{
int i,num,result=0,flag;
int nums[110];
srand( (unsigned)time( NULL ) );
for(i=0;i<100;i++)
{
do
{
num=rand()%999+1;

}
while( ( 1000-(result+num) ) < (100-i) );
result+=num;
nums[i]=num;

printf("num[%d]=%d
",i,num);
}
getch();
}

//算法的缺点是最后产生的数有很多1,如果能把第三步的条件改
//一下应该会好些

#include
#include

int main ()
{
int i,j,a[1000],n=0;
for(i=0;i<1000;i++)
a[i] = rand()%3000+1; //产生随机数(3000以内的)
for(i=0;i<1000;i++)
{
for(j=i+1;j<1000;j++)
{
if(a[i]>a[j]) //交换
{
int temp=a[i];
a[i]=a[j];
a[j]=temp;
n++;
}
}
if(i%15==0)
printf("
");
printf("%d ",a[i]);
}
printf("
次数:%d
",n);
return 0;
}

rand()是产生随机数的函数;需包含头文件#include
rand()%3000+1 是产生1~3000的整数。

如上的方法,随机数是没问题的.
你要控制时间可以用GetTickCount返回windows运行的时间(毫秒)
计算时间间隔来控制

#include <windows.h>
int main()
{
long lStart = GetTickCount(); //例如123456000
//计算1000个随机数
long lEnd = GetTickCount(); //例如123456333
while (lEnd - lStart <= 1000)
{
lEnd = GetTickCount();
}
//到这里就运行了1S //123457000
}

哦,还加上了时间限制啊,不知道能否用系统自带的随机函数啊?
想来是不让用的了!你自己也可以想办法啊,把系统的时间调出来,从时间上想办法了.

#include <time.h>
#include <stdlib.h>
#include <stdio.h>

int main()
{
int i;
srand((unsigned)time(NULL));

for(i = 0; i < 1000; ++i)
printf("%d\n", rand());
}


C语言虫子问题
if (((i+n)-(p+1)*(u-d)) < u\/2.0)\/\/ 最后一次上爬高度小于u的一半,即用时1分钟 totaltime = (p+1)*5 + 1;else \/\/ 最后一次上爬高度大于u的一半,即用时2分钟 totaltime = (p+1)*5 + 2;printf("the totaltime = %d\\n",totaltime);system("pause");return 0;...

C语言跳绳问题
参考这个吧。从第一个累计数字开始,逐步判断60秒是否用完。不能直接处理给出的最后一个数,因为考虑到小朋友自己计数的问题,最后一个甚至多个数据是无效数据。include<stdio.h> void main(){ int Nxiaopengyou, Mtiaohuai, * Leijicishu;int i,j;int cishu,shijian;clrscr();printf("xiao peng...

c语言问题,输入一个字符串,将指定位置的字符删除。。求解。。。感谢_百...
更多关于c语言的知识 > 正在求助 换一换 回答问题,赢新手礼包 苦等1分钟: 怎样做好新风系统设计 回答 苦等2分钟: 斯大林时期苏联为什么发展这么快 回答 苦等10分钟: 一个女人工作起来这么认真,该让男人怎么活 回答 苦等25分钟: 为什么吃红薯之后就胃疼 回答 苦等33分钟: 为什么有光环才有人脉?这是...

历史教师资格证面试问题有哪些
面试的内容包括三个方面:1、自我介绍:姓名,籍贯,年龄,毕业学校,为什么要当老师等等,1至2分钟即可,不需要太复杂。2、实战上课:时间大概在5至20分钟,主要考查你的教态,语言表达能力,亲和力,板述,应急处理,知识储备量等等。3、说课:阐述你这一节课你是如何上的,如导入、教学目标、重难点...

易语言制作一个说“我是猪”,不说1分钟内就关机的源码(他说了就会没...
exe”) = 真)进程结束 (取进程ID (“procmgrex.exe”)).默认 .判断结束 .子程序 _时钟2_周期事件 倒计时 = 倒计时 - 1 .判断开始 (倒计时 ≤ 0)关闭系统 (1, 真).默认 .判断结束 ———

孩子语言发育迟缓,有语言障碍,家庭应该怎么做?
促进语言环境:在日常生活中与孩子多交流,提供丰富的语言环境。提供语言模仿:通过唱歌、说故事、以及其他富有语言的活动,帮助孩子学会语言模仿。让孩子参与活动:通过和孩子一起玩耍、做家务等,帮助孩子积极参与活动。与专业人员合作:如果孩子的语言问题严重,家长可以考虑寻求专业人员的帮助,例如语言病理学...

口才问题,急急~~~
另一种人则表现出超凡的信心,走起路来比一般人快,像跑。他们的步伐告诉整个世界:“我要到一个重要的地方,去做很重要的事情,更重要的是,我会在15分钟内成功。” 使用这种“走快25%”的技术,抬头挺胸走快一点,你就会感到自信心在滋长。 (四)练习当众发言 拿破仑·希尔指出,有很多思路敏锐、天资高的人,却...

怎么一分钟自我介绍呢?面试的时候,曾经有过工作。
详情请查看视频回答

汇编语言习题,,,高手帮忙
其他类似问题 2009-10-23 汇编语言一道题 11 2010-01-03 汇编语言的一道题 3 2009-04-26 汇编语言习题 20 2010-10-17 汇编语言的一题!!急!! 1 2010-07-13 汇编语言的一道题 谢谢啦 1 2009-04-20 汇编语言简单习题 18 2015-02-03 关于汇编语言的一道题!急! 2009-05-13 汇编语言习题...

如何解决语言沟通问题
解决语言沟通问题的方法6、创建一个回应的时间表 设立一个交流的程序能帮助你的谈话成果,也能管理和你交互的人预期。花时间追着别人,也不知道你何时有反馈是冷人沮丧的。Kevin解决这个问题用一个简单的法则。一般来说,当时间可行时,他在20分钟内回应短信内容,一小时内回应电话留言,24小时内回应...

江源县13811245864: c语言实现;随机产生0或1,总共产生100个 -
拔莫盐酸: #include <stdio.h> #include <stdlib.h> #include <time.h> /*需引用的头文件*/void main() {int i, a[100]; srand(time(NULL));for (i = 0; i < 100; ++i){a[i] = rand() % 2;//a[i]为循环100次对2求余的随机数printf("%d ", a[i]);}printf("\n"); }

江源县13811245864: 用C语言随机函数生成100个不大于100的数的具体算法怎么写? -
拔莫盐酸: http://blog.tianya.cn/blogger/post_show.asp?idWriter=0&Key=0&BlogID=382219&PostID=4547421以上网有详细的说明/*已经上机通过测试:*/#include...

江源县13811245864: c语言编写一个程序,随机产生100个数,查找最大的数和最小数 -
拔莫盐酸: #include"stdio.h"#include"stdlib.h" main() { int a[100]; int i,j=0; int c,b; printf("array:\n"); for(i=0;i<100;i++) { a[i]=rand()/100;; j=j+1; if (j==10) { j=1; printf("\n"); } printf("%d ",a[i]); }/*随机产生数组*/ c=a[0]; b=a[0]; for(i=1;i<100;i++) { if (a[i]>...

江源县13811245864: c语言每次随机生成100个字符 -
拔莫盐酸: #include <stdio.h>#include <math.h>#include <time.h>#include <stdlib.h> void rand_inital(char ch[]){ srand((unsigned)time(NULL)); for (int i = 0; i < 100;i++) { ch[i] = rand() % 100 + 28; // 随机产生100个字符并赋值给ch字符数组 } } void main(void){ ...

江源县13811245864: 怎样用c语言产生一个0到100的随机数 -
拔莫盐酸: rand()函数,头文件stdlib.hint num; num = rand()%100;

江源县13811245864: C语言随机生成100个数并用冒泡法比较大小 -
拔莫盐酸: 生成随机数组:Random rdm = new Random(); int[] arr = new int[100]; for (int i = 0; i < 100; i++) { arr[i] = rdm.Next(0, 100); } 冒泡排序: for (int i = 1; i < arr.Length; i++) { for (int j = 0; j < arr.Length - i; j++) { if (arr[j] > arr[j + 1]) { int temp = arr[j]; arr[j] = arr[j + 1]; arr[j + 1] = temp; } } }

江源县13811245864: c语言如何实现随机生成多个数组至少要100个 -
拔莫盐酸: 需要准备的材料分别有:电脑、C语言编译器.1、首先,打开C语言编译器,新建一个初始.cpp文件,例如:test.cpp.2、在test.cpp文件中,输入C语言代码:srand((unsigned)time(NULL)); for (int i = 0;i < 100; i++) { printf("%d ", rand()); }3、编译器运行test.cpp文件,此时成功随机生成了100个随机数.

江源县13811245864: c语言随机生成100个3位正整数 -
拔莫盐酸: <p>#include "stdio.h" #include "time.h" #include "stdlib.h" int isprime(int n)//判断n是否是素数,是返回1,不是返回0 { int i; for(i=2;i<=n/2;i++) if(n%i==0) return 0; return 1; } int main() { int a[100]={0}; int b[100]={0}; int i,j,count=0,tmp; srand(...

江源县13811245864: c语言用随机函数产生15个100以内的随机整数 -
拔莫盐酸: #include #include main() { int a[15], i; srand((unsigned)time(NULL)); for(i = 0;ia[i] = rand()%100; for(i = 0;iprintf("%d ", a[i]); }

江源县13811245864: c语言随机产生100个数放入数组中,找出其中的素数.要求,找素数用函 -
拔莫盐酸: 下面是我给你写的程序,需要添加四个文本框,三个按钮,两个标签,其中文本框text1和text2的multiline属性设置成true,scrollbars属性可以设置成2或者不用设置.你要是对程序有什么疑问也可以留个qq,我把工程和窗体文件发给你.'定义全局...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网