今天因为有需要,要随机产生五百个等长的字符串,要一个一个写出来那是不大现实的问题,也是作为一个程序员觉得比较可耻的问题(这句话不是针对谁,只是我自己个人觉得而已)。所以利用中午休息的时间,查了一下资料,用C语言实现了这个功能。
VB、DELPHI中,都有一个随机函数,C语言虽然用了很长时间,可都没怎么听说过随机接口函数。其实它自己也有的,那就是srand(time(NULL))与rand().关于这两个函数,只是利用了时间的变化,来产生随机的数据。具体的使用,通过下面的代码就可以很容易的知道。
下面是简单的代码实现:
- #include <stdio.h>
- #include <time.h>
- #include <stdlib.h>
- int main(int argv, char** argc)
- {
- char* ss[500] = {0};
- int i = 0;
- int m = 0;
- srand(time(NULL));
- for(i = 0; i < 500; i++)
- {
- ss[i] = malloc(10);
- int j = 0;
- for(m = 0; m < 9; m++)
- {
- j = rand()%1000;
- if('A' <= j && j <= 'Z' | | 'a' <= j && j <= 'z') //只产生字母的字符串
- {
- *(*(ss+i)+m) = j;
- }
- else m--;
- }
- *(*(ss+i)+m) = '/0';
- }
- for(i = 0; i < 500; i++)
- {
- if(i % 5 == 0)
- {
- printf("/n");
- }
- printf("%s ", ss[i]);
- }
- printf("/n");
- return 0;
- }
这也是今天刚知道的一个C语言随机接口函数,所以顺便做一下笔记,如果大家有什么更好的接口函数,请告诉我~~