为了账号安全,请及时绑定邮箱和手机立即绑定
  • #include <stdio.h>

    int main() 

      

        int i = 2008,sum=0;

        int m = 8;

        int d = 8;

        switch(m-1){

        case 12: sum+=31;

        case 11 : sum+=30;

        case 10: sum+=31;

        case 9: sum+=30;

        case 8: sum+=31;

        case 7: sum+=31;

        case 6: sum+=30;

        case 5: sum+=31;

        case 4: sum+=30;

        case 3: sum+=31;

        case 2: 

        if(i%4==0&&i%100!=0||i%400==0)

        sum+=29;

        else sum+=28;

        case 1:sum+=31;break;

     }

     printf("%d年%d月%d日是该年的第%d天,",i,m,d,sum+d);

         return 0;

    }

    一些关于上面代码的解释:

    1.为什么是m-1?  因为m月之前的天数需要完整的加入sum里,m月的天数(即m月过啦几天)只需要在最后的sum中加上d就可以了(倒数第三行斜体部分);

    2.这里巧妙地没有使用break,利用switch穿透和倒加运算得到了结果。

    1. 在我的代码(思路)中一定要记得加上(break),不然会错误;

    2. 第二十九行用==和%

    查看全部
  • #include <stdio.h>


    float cost(int km, int timing) {

        float money;

        if (km <= 3) {

            money = 14;

        } else {

            if ((timing>=23 && timing<=24) || (timing>=1 && timing<5)) {

                money = 0.2 * (km - 3) * 2.3 + 13 + 1;

            } else {

                money = (km - 3) * 2.3 + 13 + 1;

            }

        }

        return money;

    }


    int main() {

        printf("小明打车的费用%.1f", cost(12, 9) + cost(12, 18));

        return 0;

    }

    查看全部
    0 采集 收起 来源:综合练习

    2023-10-15

  • #include <stdio.h> 

    /* 

     * 请使用递归函数完成本题

     * 小编已将正确代码放在左侧任务的“不知道怎么办”里

     * 小编希望各位童鞋独立完成哦~

     */

    int dfs(int n) {

        return n == 1 ? 10 : dfs(n - 1) + 2;

    }

    //这里是的话返回10,不是的话返回函数递推,妙

    int main() 

    {

        

    printf("第5个人的年龄是%d岁", dfs(5)); 

    return 0;

    }

    查看全部
    0 采集 收起 来源:递归函数练习

    2023-10-15

  • https://img1.sycdn.imooc.com/652a63a00001fa5305150762.jpg

    c语言中的除法直接可以表示取整,如5/2==2

    查看全部
  • https://img1.sycdn.imooc.com/652a5e5a0001035304610746.jpg

    for( 定一 ; 判二 ; 执行三 )

    查看全部
  • https://img1.sycdn.imooc.com/652a5cc9000104bb04660752.jpg

    不熟

    查看全部
  • 在定义中不允许连续赋值

    查看全部
    0 采集 收起 来源:变量及赋值

    2023-10-13

  • 标识符的第一个字符必须是字母或下划线

    查看全部
    0 采集 收起 来源:练习题

    2023-10-13

  • 使用break语句时注意以下几点:

    1、在没有循环结构的情况下,break不能用在单独的if-else语句中

    2、在多层循环中,一个break语句只跳出当前循环

    为真跳出循环

    查看全部
    1. swith穿透:在case子句后如果没有break;会一直往后执行一直到遇到break;才会跳出switch语句;

    2. switch后面的表达式语句只能是整型或者字符类型;

    3. 各case和default子句的先后顺序可以变动,而不会影响程序执行结果;

    4. default子句可以省略不用。

    5. switch()后没有分号。


    查看全部
  • break语句与continue语句的区别是:break是跳出当前整个循环,continue结束本次循环开始下一次循环。 (仅对循环生效,对if等其他结构不生效)

    查看全部
    1. 1不是素数;

    2. ==表示等于,=表示赋值(第九行)

    3. 第十二行代码的含义:防止如一下这类情况的出现,eg:m等于6,n等于2,求余等于0但是m不是素数。保证输出的m一定是素数。

    4. 别再忘了第二条!!!

    5. 没有循环结构的情况下,break不能用在单独的if-else语句中;

    6. 对于第5条,也就是说continue只能用在循环体内break可用在除循环体的其他类型的语句中。

    查看全部
  • printf("%d*%d=%d\t",i,j,result);

    牢记复习上面这行c语言的书写格式和方法。

    查看全部
  • 根据要输出的循环阵的特点(比如:1.每几个*换行,2.相邻两行*的变化特点是什么,增加几个,减少几个)来设计循环代码。

    查看全部

举报

0/150
提交
取消
课程须知
本教程仅仅是C程序设计的入门教程
老师告诉你能学到什么?
什么是程序; 什么是程序结构; 什么是函数; 什么是数组.

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!