Sunset Raven 2020-11-05 11:41 采纳率: 100%
浏览 11
已采纳

请问此类代码应该如何完成?

老师会根据周数决定哪些学号的同学提交作业。决定的方法为:学号最后一位模3(对3求余)与学习周数模3(对3求余)的结果相同同学需要提交作业。请编写一个程序,判断输入的学号是否需要提交作业

  例如,

第一周(1%3=1)要求学号最后一位模3为1的同学交作业,即学号为尾数为1,4,7的同学交作业;

第二周(2%3=2)要求学号最后一位模3为2的同学交作业,即学号为尾数为2,5,8的同学交作业;

第三周(3%3=0)要求学号最后一位模3为0的同学交作业,即学号为尾数为3,6,9,0的同学交作业;

    任务描述及步骤:

    1.定义1个int型变量strNum,用于存储学生学号,初始值为0;

    2 定义1个int型变量remainder,用于存储学生学号最后一位,初始值为-1;

    3.定义1个int型变量weekNum,用于存储周数,初始自为0;

    4.提示用户输入学号,然后用scanf()函数读取用户从键盘输入的1个整数,保存到变量stuNum;

    5.判断学号的合理性,要求学号必须在[202011001,202015000)范围内(以电软系20级学生为例),

    6.提示用户输入周数,然后用scanf()函数读取用户从键盘输入的1个整数,保存到变量weekNum;

   7.判断周数的合理性,要求周数必须在[1,20]范围内    ;

   8 计算remainder,即remainder=strNum%10

   9.计算remainder%3的值与weekNum%3的值是否相等。若相等输出:“学生XXX在xx周应该交作业吗?是”,否则输出“学生XXX在xx周应该交作业吗?否”

  • 写回答

5条回答 默认 最新

  • qtchen_1988 2020-11-05 16:13
    关注
    #include <stdio.h>
    int main(){
        int strNum=0,remainder=-1,weekNum=0;
        printf("输入学号:");
        scanf("%d",&strNum);
        if((strNum>=202011001) && (strNum<202015000))
        {
            printf("输入周数:");
            scanf("%d",&weekNum);
            if((weekNum>=1) && (weekNum<=20))
            {
                remainder = strNum%10;
                if((remainder%3) == (weekNum%3))
                    printf("学生%d在%d周应该交作业吗?是\n",strNum,weekNum);
                else
                    printf("学生%d在%d周应该交作业吗?否\n",strNum,weekNum);
            }
            else
                printf("%d不在正确范围内\n",weekNum);
        }
        else
            printf("%d不在正确范围内\n",strNum);
        return 0;
    }

     

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(4条)

报告相同问题?

悬赏问题

  • ¥15 使用ue5插件narrative时如何切换关卡也保存叙事任务记录
  • ¥20 软件测试决策法疑问求解答
  • ¥15 win11 23H2删除推荐的项目,支持注册表等
  • ¥15 matlab 用yalmip搭建模型,cplex求解,线性化处理的方法
  • ¥15 qt6.6.3 基于百度云的语音识别 不会改
  • ¥15 关于#目标检测#的问题:大概就是类似后台自动检测某下架商品的库存,在他监测到该商品上架并且可以购买的瞬间点击立即购买下单
  • ¥15 神经网络怎么把隐含层变量融合到损失函数中?
  • ¥15 lingo18勾选global solver求解使用的算法
  • ¥15 全部备份安卓app数据包括密码,可以复制到另一手机上运行
  • ¥20 测距传感器数据手册i2c