随机生成300个[1,100]的整数,将其转换为五级制(优、良、中、及格和不及格)的评定等级,然后统计各个等级人数
主要使用rand函数生成随机数,然后用count统计人数
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define N 300 // 定义数组长度
int main() {
int num[N];
int count[5] = {0}; // 初始化等级人数为0
int i;
srand((unsigned)time(NULL)); // 设置随机数种子为当前时间戳
printf("随机生成的整数为:\n");
for (i = 0; i < N; i++) {
num[i] = rand() % 100 + 1; // 随机生成1-100之间的整数
printf("%d ", num[i]); // 输出生成的整数
// 将生成的整数转换为五级制评定等级,并统计各个等级人数
if (num[i] >= 90) {
count[0]++;
} else if (num[i] >= 80) {
count[1]++;
} else if (num[i] >= 70) {
count[2]++;
} else if (num[i] >= 60) {
count[3]++;
} else {
count[4]++;
}
}
printf("\n各个等级人数分别为:\n优:%d\n良:%d\n中:%d\n及格:%d\n不及格:%d\n", count[0], count[1], count[2], count[3], count[4]);
return 0;
}
输入
无
输出
输出所有可能的驮法。
2,30,68
5,25,70
8,20,72
11,15,74
14,10,76
17,5,78
20,0,80
#include <stdio.h>
int main()
{
int a,b,c,sum;
for (a=0;a<=33;a++)
{
for(b=50;b>=0;b--)
{
c=100-a-b;
if (c%2!=0) continue; /*保证小马数量为偶数才可实现每两匹马驮一担*/
sum=3*a+2*b+c/2;
if(sum==100) printf("%d,%d,%d\n",a,b,c);
}
}
return 0;
}
大马的数量始终不可能超过33,中马的数量始终不超过50,而小马的数量又可以通过大马,中马来控制,而且还要保证小马数量为偶数。
这个代码还有点参考了其他人的思路,嗯,还需要加油啊。