第二、三次上机
前言
自己写的上机作业,可以用于参考
目前处于初步学习中,写的不好见谅
一、题目
二、解题
1.思路
若输入的数为0,则游戏结束,加分停止
若输入的数是1,则加1分
若输入的数为2,,设加d分,还需进行判断前一个数是否为2
若前一个数不为2,则加分d=2
若前一个数为2,则加分d=d+2(加分等于前一次的加分+2)
对所有加分求和,输出总分
2.代码
代码如下(示例):
#include<stdio.h>
int main()
{
int i,a[1000],d=0,sum=0;
for(i=0;i<1000;i++)
{
scanf("%d",&a[i]);
if(a[i]==0)break;//输入若干个数,输入到0为止
}
for(i=0;i<1000;i++)//对每一步进行判断
{
if(a[i]==1)sum=sum+1;//输入的数是1,则加1分
else if(a[i]==2)
{
if(a[i-1]!=2)//判断前一个数是否为2
{
d=2;sum=sum+d;//前一个数不为2,则加分d=2
}
else if(a[i-1]==2)//前一个数为2,则加分d=d+2
{
d=d+2;sum=sum+d;
}
}
else if(a[i]==0)break;//输入的数为0,则游戏结束,加分停止
}
printf("%d",sum);//输出总分
return 0;
}