问题一,火炮问题,有思路,但不会写出代码来,目前学了c语言和数据结构,求解答,感谢
主要参考模拟框图来做即可,跟流程图差不多。
#include <stdio.h>
#include <stdlib.h>
int main()
{
float hit_rate = 0.5;
float destroy_rate = 1.0/3.0 + 1.0/6.0;
int hit_count = 0;
int destroy_count = 0;
for (int i = 0; i < 20; i++) {
// 模拟指示是否正确
if (rand() < hit_rate * RAND_MAX) {
// 指示正确的情况下,模拟射击效果
if (rand() < destroy_rate * RAND_MAX) {
destroy_count++;
}
hit_count++;
}
}
float effective_rate = (float) hit_count / 20.0;
float destroy_avg = (float) destroy_count / (float) hit_count;
printf("有效射击比率:%.2f\n", effective_rate);
printf("毁伤敌方火炮的平均值:%.2f\n", destroy_avg);
}
您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!