hyfm.net
当前位置:首页 >> C语言随机一个四位数 >>

C语言随机一个四位数

#include <stdlib.h>#include <stdio.h>#include <time.h> int randoms(int number) { return (int)(number/(float)RAND_MAX * rand()); } int main() { int i; srand((unsigned)time(NULL)); for(i=1;i<=24;i++) printf("%d\n",(int)(randoms(10000))); system("pause"); }

如果什么都不考虑(4位数:1000~9999),这样就行了吧:(int) ((float) rand() / RAND_MAX * (9999 - 1000 + 1)) + 1000 恩,还是功夫不到家,这个好:srand((unsigned)time(NULL)); //产生随机数种子 printf("%d\n",rand()%9000+1000); //输出随机数

将1-9随机乱序存放到数组,然后随机一个数组下标,依次取4个数[下标取模]

给你个思想吧 随机函数网上搜下就知道了 你可以随机4次 0~9的整数,比较下互不相等就行了,然后分别乘以1、10、100、1000,其中第四位数不为0就行了

可以将生成的随机数放入数组中,每次遍历数组,有相同的重新生成随机数.知道生成4个即退出循环.#include <stdio.h>#include <stdlib.h>#include <time.h> int main() { int num[4], cnt = 0, n; srand(clock()); // 设置随机数种子 while (cnt < 4) { n

你就写成产生4个一位的随机数,只是1~9,然后每产生一个要判断下跟之前的是否相等,如果相等就重新产生个就行了

#include#includeusing namespace std;void main(){ char s[4]; int n,k; cin>>s; sort(s,s+4); n=(s[0]-'0')*1000+(s[1]-'0')*100+(s[2]-'0')*10+(s[3]-'0'); k=(s[3]-'0')*1000+(s[2]-'0')*100+(s[1]-'0')*10+(s[0]-'0'); cout 追问: 用的是C++,题目是:要求输入一

可以先把0-9放入一个数组,然后对第一位,随机生成一个10以内的数如:rand()%8+1(避免高位是0的情况),产生的随机数来取数组中的数,并把数组在该位置以后的数前移,即删掉该数字..第二位用rand()%8,得到,从数组中取出该对应位置的数字作为第二位,然后删掉该数组第三位用rand()%7,第四位用rand()%6这样就可以生成一个四位无重复数字的四位数了

Rnd*1000

#include #include void main() { srand((unsigned)time(NULL)); bool flig=true; int a[4]; for (int i=0,j=0;i!=15;++i) { if (flig) { printf("开始猜第%d个数:\n",j+1); a[j]=rand()%100+1; //产生 1~100的随机数 // printf("%d",a[j]); if (j==3) { printf("谢

krfs.net | whkt.net | mtwm.net | zhnq.net | bycj.net | 网站首页 | 网站地图
All rights reserved Powered by www.hyfm.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com