如果用窗体设计20道(或者更多)选择题,或者直接用代码表示;有的人只做对几个,有的人只做错几个,各种情况都有,那么如何来筛选判断最后的成绩得分?如果用if选择结构来判断筛选,那么就要考虑到所有的情况,至少要反复筛选几十次,所以我就想知道有没有稍微简单一点点的算法……
关于C#成绩打分系统的代码原理
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
1条回答 默认 最新
wander303 2022-04-04 08:26关注用for循环,一个数组装每到题目的分值,另一个数组装每到题目是否正确或者转每道题的得分比例(因为不是所有题目都是只有满分和0分),如第一题20分,做对了权值为1,做错了权值为0得分分别为20×1和20×0
以下是C语言实现(原谅我没学过C#)#include "stdio.h" int CalcResult(int *grade,int *istrue,int n)//grade为分数数组,根据istrue[i]是0还是1判断第i+1到题是否正确,n为总题目数 { int i,result=0; for(i=0;i<n;i++) { printf("你第%2d题总分为%3d 得分为:%3d\n",i+1,grade[i],istrue[i]*grade[i]); result+=grade[i]*istrue[i]; } return result; } int main() { int grade[20],istrue[20],i; for(i=0;i<20;i++) { grade[i]=(i+1);//给每道题赋分 istrue[i]=i%2;//模拟批改a } printf("result=%d",CalcResult(grade,istrue,20)); return 0; }本回答被题主选为最佳回答 , 对您是否有帮助呢?评论 打赏 举报 编辑记录解决 1无用