CSP考试 2018年12月第1题 小明上学 C语言实现

题目分析:

该题是根据交通规则中的红绿灯变化来统计时间的,值得注意的是红黄绿三种颜色的灯的变化是 循环的,这就造成如果是黄灯正好亮了,那么接着亮起的红灯还要接着等待。该题相比较与前面的CSP考试的第一题,风格有了很大不同,它设置为实际场景性的题目,题目阅读量变大,造成一定理解题目含义的延迟变大,所以不像言简意赅型的题目所花费的时间少。所以我预测将来考试的题目也会设置为场景性,并且阅读量也会增加。

C语言源程序:

#include<stdio.h>
int main()
{
	int r,y,g;
	int n,i;
	int flag,time;
	int sum=0;
	scanf("%d%d%d",&r,&y,&g);
	scanf("%d",&n);
	for(i=0;i<n;i++)
	{
		scanf("%d%d",&flag,&time);
		if(flag==0 || flag==1)
		{
			sum=sum+time;
		}
            //这地方最值得注意,是因为黄灯之后就是红灯
		else if(flag==2)
		{
			sum=sum+time+r;
		}
	}
	printf("%d",sum);
	return 0;
}

运行结果:

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章