求程序员老师教我用伪代码设计这么一个程序

要求设计一个程序,开始时会问学生所学的科目数量,当科目数量小于0或者大于4时会要求重新输入,如果是4门以内的数量则会继续询问第一门科目考试成绩,考试成绩小于0或大于100时会要求重新输入,输入正确后会依次再询问第二门,第三门,第四门考试成绩,随后要求计算出此学生的平均考试成绩。。。

电脑渣上编程课表示跪了。。编这个程序时真心不知道该往哪开头

1:定义合适类型变量用来存储科目,分数等
2:判断科目如果nWork <= 0 || nWork > 4则重新输入
3:循环依次输入各科目分数
4:判断分数是否超出范围0 > nScore[i] || 100 < nScore[i]
5:超出则重新输入
6:累加正确分数
7:计算平均分
8:输出平均分

demo
int nWork = 0;
float nScore[4] = 0.0;
float fAvg = 0.0;
float fAll = 0.0;
do
{
printf("Please input the work NO..\n");
scanf("%d",&nWork);
}
while(nWork <= 0 || nWork > 4)

for(int i = 0 ;i<nWork-1;i++)
{
do
{
scanf("%f",nScore[i]);
}
while(0 > nScore[i] || 100 < nScore[i])
fAll += nScore[i];
}
fAvg = fAll/nWork
printf("The avg score is :%f",fAvg);追问

我们老师教的是没有那种括号的,不是这种类型的。。。用的是if..and...then语法,然后还有就是if一段完了以后第二行还要加一个endif,大哥你会那种的么

追答

是哪一种语言 VB?还是其他脚本语言?

温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-04-10
#include"stdio.h"
void main()
{
int subjectNumber=0,
score=0;
float sum=0;

printf("所学科目数量:");
Circle:
scanf("%d",&subjectNumber);
if(subjectNumber>4 || subjectNumber<=0)
{

printf("输入错误,请重新输入.\n");
goto Circle;
}
for(int i=0;i!=subjectNumber;++i)
{
printf("第%d门学科成绩为:",i+1);
Circle2:
scanf("%d",&score);
if(score>100 || score<0)
{
printf("输入错误,请重新输入.\n");
goto Circle2;
}
sum+=score;
}
sum=sum/(float)subjectNumber;
printf("%d门学科平均分为:%f \n",subjectNumber,sum);
}
我都快忘了怎么写了。
相似回答