第二、三次上机
目录
前言
自己写的上机作业,可以用于参考
目前处于初步学习中,写的不好见谅
一、题目
二、解题
1.思路
n>0&&n<1000,设去掉了d个数,则总共报了n+d个数
所以只需跳过其中各位或十位或百位上有7的数即可
找出该数后判断该数对3求余的值
若为1则为第一个同学,若为2则为第二个同学,若为0则为第三个同学
2.代码
代码如下(示例):
#include<stdio.h>
int main()
{
int i,n,a=0,b=0,c=0,d=0;
scanf("%d",&n);
n>0&&n<1000;
for(i=0;i<n+d;i++)
{
if(i%7==0||i%10==7||(i/10)%10==7||(i/100)%10==7)//若带有7则跳过
{
d=d+1;
if(i%3==0)c=c+1;//若为0则为第三个同学
else if(i%3==2)b=b+1;//若为2则为第二个同学
else if(i%3==1)a=a+1;//若为1则为第一个同学
}
}
printf("%d %d %d",a,b,c-1);//c要去掉i=0的情况
return 0;
}