CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  VC/MFC >  基础类

请问如何随机产生一串字符串????

楼主savagegan(shusheng gan)2003-06-03 17:47:15 在 VC/MFC / 基础类 提问

请问如何随机产生一串字符串???? 问题点数:0、回复次数:4Top

1 楼bager(柏哥)回复于 2003-06-03 17:53:45 得分 0

可以随机生成字符串的长度,再随机生成字符串的每个字符。Top

2 楼li_qingsong(铭心)回复于 2003-06-03 17:54:26 得分 0

#include   <stdlib.h>  
  #include   <stdio.h>  
  #include   <time.h>  
   
  void   main(   void   )  
  {  
        int   i;  
   
        /*   Seed   the   random-number   generator   with   current   time   so   that  
          *   the   numbers   will   be   different   every   time   we   run.  
          */  
        srand(   (unsigned)time(   NULL   )   );  
   
        /*   Display   10   numbers.   */  
        for(   i   =   0;       i   <   10;i++   )  
              printf(   "     %6d\n",   rand()   );  
  }  
   
   
  Output  
   
          6929  
          8026  
        21987  
        30734  
        20587  
          6699  
        22034  
        25051  
          7988  
        10104  
   
  可以定义CString   完成数字到字符的转换!  
  可以使用itoa()完成数字到字符的转换!  
  明白了?Top

3 楼coohai(海)回复于 2003-06-03 17:54:54 得分 0

产生随机数时定个范围,这个范围就是字符的取值范围。Top

4 楼deverxp(abcdefg)回复于 2003-06-03 18:01:59 得分 0

用我的这个,  
  //   iType:   0   ->   all   syblos   allowed  
   
  //   1   ->   字母与数字  
  //   2   ->   字母  
  //   3   ->   数字  
   
  CString   RandomString(   int   iLength,   int   iType   )  
  {  
   
  CString   strReturn;  
  CString   strLocal;  
   
  for(   int   i   =   0   ;   i   <   iLength   ;   ++i   )  
  {  
   
  int   iNumber;  
   
  //   Seed   the   random-number   generator   with   TickCount   so   that  
  //   the   numbers   will   be   different   every   time   we   run.  
  srand(   (unsigned   int)(   (i+1)*iLength*GetTickCount()   )   );  
  switch(   iType   )  
  {  
  case   1:  
   
  iNumber   =   rand()%122;  
  if(   48   >   iNumber   )  
  iNumber   +=   48;  
   
  if(   (   57   <   iNumber   )   && (   65   >   iNumber   )   )  
  iNumber   +=   7;  
   
  if(   (   90   <   iNumber   )   && (   97   >   iNumber   )   )  
  iNumber   +=   6;  
   
  strReturn   +=   (char)iNumber;  
  break;  
   
  case   2:  
   
  iNumber   =   rand()%122;  
  if(   65   >   iNumber   )  
  iNumber   =   65   +   iNumber%56;  
   
  if(   (   90   <   iNumber   )   && (   97   >   iNumber   )   )  
  iNumber   +=   6;  
   
  strReturn   +=   (char)iNumber;  
   
  break;  
   
  case   3:  
   
  strLocal.Format("%i",   rand()%9   );  
   
  strReturn   +=   strLocal;  
   
  break;  
   
  default:  
   
  strReturn   +=   (char)rand();  
   
  break;  
   
  }  
   
  }  
   
   
  return   strReturn;  
   
  }Top

相关问题

  • 随机产生字符串?
  • 怎样生成随机字符串
  • 随机字符串的生成
  • 随机生成字符串的问题
  • 字符串得随机数字
  • 字符串.....哎,字符串
  • 截字符串???
  • 字符串
  • 取字符串s
  • 字符串

关键词

  • inumber
  • 字符串
  • strreturn
  • strlocal
  • rand
  • cstring
  • break
  • numbers
  • include
  • time

得分解答快速导航

  • 帖主:savagegan

相关链接

  • Visual C++类图书
  • Visual C++类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo