可以预定义一个数,然后根据百分比计算各自的门槛值。如下:(注意:概率需要从小到大排列,因为用if判断的问题。)#define BASE_NUMBER 32767#define BASE_DIV 100#define RATE1 1#define RATE2 5#define RATE3 20#define RATE4 74 int var1, var2, var3, var4;main() else if ( rand <= var2 ) else if ( rand <= var3 ) else ...} 如上,只需要改变BASE_DIV 和RATE1 2 3 4就能控制