【day4华清远见作业】

作业1:展开的思路,按要求分析以下代码。

要求不要放到编译器中运行,自己手动分析出每条输出语句的结果,分析出结果后,再在编译器中执行验证结果

作业四:使用switch实现,要求输入一个日期,输出该日期是对应今年的第几天

例如输入:2023 1 20 输出结果:该日期是今年第20天

作业二:编程实现:输入华氏温度F,要求输出对应的摄氏温度C,要求结果保留两位小数。计算公式为:C = (F-32)/1.80;

作业三:使用switch实现简易计算器:例如,输入一个表达式:3+5,程序输出结果为8

作业四:使用switch实现,要求输入一个日期,输出该日期是对应今年的第几天

例如输入:2023 1 20 输出结果:该日期是今年第20天

ubuntu@ubuntu:~/c_adva/4day $ ./a.out 
请输入年月日:2023 3 1
2023年是平年
该日期是2023年的第60天
ubuntu@ubuntu:~/c_adva/4day $ ./a.out 
请输入年月日:2023 4 1
2023年是平年
该日期是2023年的第91天
ubuntu@ubuntu:~/c_adva/4day $ ./a.out 
请输入年月日:2023 5 1
2023年是平年
该日期是2023年的第121天
ubuntu@ubuntu:~/c_adva/4day $ cat 4day.c 
//输入年月日求出对应该年的具体多少天。  
#include<stdio.h>  
#include<string.h>  
#include<stdlib.h>  
#include<math.h>  
  
int main(int argc, const char *argv[])  
{  
    int year =0;  
    int moon =0;  
    int day =0;  
    int flag =0;//用于标记是平闰年,规定平年为0,闰年为  
    printf("请输入年月日:");  
    scanf("%d %d %d", &year, &moon, &day);  
    if((year%4 == 0 && year%100 != 0) || (year%400 == 0)){  
        flag = 1;  
        printf("%d年是闰年\n", year);  
    }else{  
        flag = 0;  
        printf("%d年是平年\n", year);  
  
    }  
    switch(moon){  
    case 12:{  
                if(1==flag){  
                    day=335+day;  
                    printf("该日期是%d年的第%d天\n", year, day);  
                   break;  
                }else{  
                    day= 334+day;  
                    printf("该日期是%d年的第%d天\n", year, day);  
                   break;  
                }  
            }  
    case 11:{     
                if(1==flag){  
                    day=305+day;  
                    printf("该日期是%d年的第%d天\n", year, day);  
                   break;  
                }else{  
                    day= 304+day;  
                    printf("该日期是%d年的第%d天\n", year, day);  
                   break;  
                }     
            }  
    case 10:{     
                if(1==flag){  
                    day=274+day;  
                    printf("该日期是%d年的第%d天\n", year, day);  
                   break;  
                }else{  
                    day= 273+day;  
                    printf("该日期是%d年的第%d天\n", year, day);  
                   break;  
                }     
            }  
    case 9:{      
               if(1==flag){  
                   day=244+day;  
                   printf("该日期是%d年的第%d天\n", year, day);  
                   break;  
               }else{  
                   day= 243+day;  
                   printf("该日期是%d年的第%d天\n", year, day);  
                   break;  
               }      
           }  
    case 8:{      
               if(1==flag){  
                   day=213+day;  
                   printf("该日期是%d年的第%d天\n", year, day);  
                   break;  
               }else{  
                   day= 212+day;  
                   printf("该日期是%d年的第%d天\n", year, day);  
                   break;  
               }      
           }  
    case 7:{      
               if(1==flag){  
                   day=182+day;  
                   printf("该日期是%d年的第%d天\n", year, day);  
                   break;  
               }else{  
                   day= 181+day;  
                   printf("该日期是%d年的第%d天\n", year, day);  
                   break;  
               }      
           }  
  
    case 6:{      
               if(1==flag){  
                   day=152+day;  
                   printf("该日期是%d年的第%d天\n", year, day);  
                   break;  
               }else{  
                   day= 151+day;  
                   printf("该日期是%d年的第%d天\n", year, day);  
                   break;  
               }      
           }  
    case 5:{      
               if(1==flag){  
                   day=121+day;  
                   printf("该日期是%d年的第%d天\n", year, day);  
                   break;  
               }else{  
                   day= 120+day;  
                   printf("该日期是%d年的第%d天\n", year, day);  
                   break;  
               }      
           }  
  
    case 4:{      
               if(1==flag){  
                   day=91+day;  
                   printf("该日期是%d年的第%d天\n", year, day);  
                   break;  
               }else{  
                   day= 90+day;  
                   printf("该日期是%d年的第%d天\n", year, day);  
                   break;  
               }      
           }  
    case 3:{      
               if(1==flag){  
                   day=60+day;  
                   printf("该日期是%d年的第%d天\n", year, day);  
                   break;  
               }else{  
                   day= 59+day;  
                   printf("该日期是%d年的第%d天\n", year, day);  
                   break;  
               }      
           }  
    case 2:{      
               if(1==flag){  
                   day=31+day;  
                   printf("该日期是%d年的第%d天\n", year, day);  
                   break;  
               }else{  
                   day= 30+day;  
                   printf("该日期是%d年的第%d天\n", year, day);  
                   break;  
               }      
           }  
    case 1:{      
               if(1==flag){  
                   day=day;  
                   printf("该日期是%d年的第%d天\n", year, day);  
                   break;  
               }else{  
                   day=day;  
                   printf("该日期是%d年的第%d天\n", year, day);  
                   break;  
               }      
           }  
    }  
    return 0;  
}  
  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值