int * getRandom( ) { static int r[10]; int i; /* 设置种子 */ srand( (unsigned)time( NULL ) ); for ( i = 0; i < 10; ++i) { r[i] = rand(); printf("%d\n", r[i] ); } return r; }
时间: 2024-04-02 22:33:49 浏览: 23
这段代码定义了一个名为 getRandom 的函数,它返回一个 int 指针。该函数内部定义了一个静态整型数组 r,数组长度为 10,用于存储生成的随机数。函数内部使用 srand 函数根据时间设置随机数种子,然后使用 rand 函数生成 10 个随机数,并将这些随机数存储在数组 r 中。最后,函数返回指向数组 r 的指针。由于数组 r 是静态数组,其生命周期与程序运行时间相同,因此可以安全地返回指向数组 r 的指针。在函数外部,可以通过调用 getRandom 函数获取生成的随机数数组。
相关问题
def getRandom(self): string = "1234567890abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ" res = "" for i in range(16): res += string[int(random.random()*62)] return res
这是一个 Python 类中的一个方法,名为 getRandom。它的作用是生成一个长度为 16 的随机字符串,由数字和大小写字母组成。具体实现方式是先定义一个包含所有可能字符的字符串 string,然后通过循环生成一个长度为 16 的字符串 res,每次从 string 中随机选取一个字符加入 res 中。其中 random.random() 返回一个 0~1 之间的随机小数,乘以 62(string 的长度)后取整可以得到 0~61 之间的整数,用来从 string 中选取字符。最后返回生成的随机字符串 res。
创建一个RandomDemo类, 定义一个生成4位随机数的方法getRandom() 重载定义一个生成n位随机数的方法getRandom(int number)
好的,以下是RandomDemo类的代码:
```java
import java.util.Random;
public class RandomDemo {
private static final int DEFAULT_LENGTH = 4; // 默认生成4位随机数
public static void main(String[] args) {
RandomDemo demo = new RandomDemo();
System.out.println(demo.getRandom()); // 调用默认生成4位随机数的方法
System.out.println(demo.getRandom(6)); // 调用生成6位随机数的方法
}
/**
* 生成4位随机数的方法
*
* @return 返回生成的随机数
*/
public String getRandom() {
return getRandom(DEFAULT_LENGTH);
}
/**
* 生成n位随机数的方法
*
* @param number 随机数的位数
* @return 返回生成的随机数
*/
public String getRandom(int number) {
StringBuilder sb = new StringBuilder();
Random random = new Random();
for (int i = 0; i < number; i++) {
sb.append(random.nextInt(10));
}
return sb.toString();
}
}
```
在上面的代码中,我们定义了两个生成随机数的方法,一个是默认生成4位随机数的方法getRandom(),另一个是生成n位随机数的方法getRandom(int number)。这两个方法都是通过调用Java中的Random类来实现的。其中,getRandom(int number)方法通过for循环来生成指定位数的随机数,每次循环调用Random类的nextInt(10)方法来生成0~9之间的随机整数,并将其添加到StringBuilder对象中,最终将StringBuilder对象转换成字符串返回即可。