注册 登录
编程论坛 C语言论坛

大家看看这个题咋写,我老是显示段错误

黑暗骑士5D 发布于 2019-11-13 00:51, 981 次点击
中国有句俗语叫“三天打鱼两天晒网”。假设某人从某天起,开始“三天打鱼两天晒网”,问这个人在以后的第N天中是“打鱼”还是“晒网”?

输入格式:
输入在一行中给出一个不超过1000的正整数N。

输出格式:
在一行中输出此人在第N天中是“Fishing”(即“打鱼”)还是“Drying”(即“晒网”),并且输出“in day N”。

输入样例1:
103
输出样例1:
Fishing in day 103
输入样例2:
34
输出样例2:
Drying in day 34
3 回复
#2
rjsp2019-11-13 08:20
你说段错误,但不给代码,别人怎么知道你错在哪里?
(103-1)%5 < 3 为true,故 打渔
(34-1)%5 < 3 为false,故 晒网
#3
纯蓝之刃2019-11-13 20:08
程序代码:
#include <stdio.h>

int main ()
{
    int N;

    do
    {
        printf("请输入天数:");
        scanf("%d",&N);
    }while(N>1000||N<=0);

    if(N%5<=3)
        printf("Fishing in day %d",N);
    else
        printf("Drying in day %d",N);

    return 0;
}
#4
自学的数学2019-11-13 20:21
程序代码:
#include<stdio.h>
int main(){
    int N, i;
    scanf("%d", &N);
    for (i = 0; i < N; i += 5)
        ;
    if (i - N > 1)
        printf("Fishing in day %d", N);
    else
        printf("Drying in day %d\n", N);
}
1