c - 关于随机数生成
问题描述
我写了代码,但是当我编译它时,它似乎是一个错误的总和。你能帮帮我吗?
有 n 名学生参加课程,这门课程有五个部分,使用具有原型 int 随机分配的函数编写 ac 程序,该函数随机分配给每个学生五个部分中的一个,并在最后打印哪些学生被分配到哪个部分程序你应该报告每个部分有多少学生。您的函数将生成一个介于 1 和 5 之间的随机数。
#include<stdio.h>
#include<stdlib.h>
int fun(void){
return 1 +rand()%5;
}
int main(){
int numstu,count,a,sum1,sum2,sum3,sum4,sum5;
printf("Enter the number of students:");
scanf("%d",&numstu);
for(count=1;count<=numstu;count++){
a=fun();
printf("Student number %d assigned to %d\n",count,a);
if (a==1)
sum1=sum1+1;
if (a==2)
sum2=sum2+1;
if (a==3)
sum3=sum3+1;
if (a==4)
sum4=sum4+1;
if (a==5)
sum5=sum5+1;
}
printf("The number of student in section 1 is %d",sum1);
printf("The number of student in section 2 is %d",sum2);
printf("The number of student in section 3 is %d",sum3);
printf("The number of student in section 4 is %d",sum4);
printf("The number of student in section 5 is %d",sum5);
return 0;
}
解决方案
您没有初始化任何变量,也没有执行任何错误检查。
做这个:
int numstu = 0, count = 0, a = 0;
int sum1 = 0, sum2 = 0, sum3 = 0, sum4 = 0, sum5 = 0;
并检查结果scanf
。
(为了便于阅读,声明分开了)
推荐阅读
- opencart - 数据库中列出的产品未在“管理”>“产品列表”中列出
- php - PHP while true 循环,sleep() 函数最短时间
- javascript - 如何在 reactJS 中的 setState 中传递 .JSON
- mysql - 为什么 MEMBER OF() 比 JSON_CONTAINS() 快?
- python - 查找奇偶校验异常值 Python
- python - 尝试使用 easygui 导出和使用登录信息
- git - 如何正确地将应用程序上传到 GitHub?
- node.js - I can't get react up and running. When i type npm start then it gives me an error
- aws-amplify - 使用 AWS AppSync(带放大),如何允许经过身份验证的用户只读访问,但只允许对象所有者的突变?
- python - ModuleNotFoundError:Jupyter 笔记本中的“sklearn”