c++中如何产生随机字符串

c++中如何产生随机字符串,第1张

#include<cstdio>

#include<time.h>

#include<stdlib.h>

using namespace std

int main()

{

srand(time(0))//产生随机化种子

int n=rand()%15+1 //在1-15的范围内随机产生字符个数

printf("%d",n)

while(n--) //依次产生n个字符

{

printf("\n")

int k=rand()%50+1 //随机生成一个字符串的长度

for(int i=1i<=ki++)

{

int x,s //x表示这个字符的ascii码 ,s表示这个字符的大小写

s=rand()%2//随机使s为1或0,为1就是大写,为0就是小写

if(s==1)//如果s=1

x=rand()%('Z'-'A'+1)+'A' //将x赋为大写字母的ascii码

else

x=rand()%('z'-'a'+1)+'a' //如果s=0,x赋为小写字母的ascii码

printf("%c",x)//将x转换为字符输出

}

}

return 0

}

 Sub 生成随机字符串()

 dim charnum as Integer  '定义一个整型变量用于接收ASC码

 dim rndstr as String '定义一个字符串变量用于保存你的随机字符串

 

 for i=1 to 5   '5个随机字符组成的字符串

 Randomize '重置随机种子

 charnum=Int((123 - 97 + 1) * Rnd + 97) '把97-123之间的随机整数赋值给我们的变量

 rndstr=rndstr & Chr(charnum)   '每生成一个随机字符就并入这个字符串

 next i

 

 print rndstr   打印出这个随机字符串

 

 End Sub

字符串由字符组成,字符可以用ASCII码表示,故而只要只要你需要的字符的ASC码的范围,

比如a是97,b是98.....等等

所以程序中就先生成若干个随机整数数组,根据你需要确定数组里元素的个数,然后用一个循环把每个整数转换成字符,再把字符链接起来就成为你要的随机字符串了。

方法:以8位随机码为例。

1、打开EXCEL表格,在任意单元格输入:=TEXT(INT(RAND()*100000000),"00000000")

2、向下或向右拖动填充手柄,就可以改变数值。

注:如更需要更改数值,可将中间的“100000000”的0增加/减少。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/bake/11910779.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-19
下一篇 2023-05-19

发表评论

登录后才能评论

评论列表(0条)

保存