zoukankan      html  css  js  c++  java
  • 循环练习

    //循环(计算某个数的位数) 输入一个正整数, 计算这个正整数的位数

    //int main(int argc, const char * argv[]) {

    //    int n;

    //    int cnt=0;

    //    scanf("%d", &n);

    //    while (n) {

    //        cnt++;

    //        n/=10;

    //    }

    //    printf("cnt = %d ", cnt);

    //    

    //    return 0;

    //}

    //a=1 b=1

    //a+b/a   2/1  a = 2 b = 1

    //a+b/a   3/2  a = 3 b = 2

    //a+b/a   5/3  a = 5 b = 3

    //...

    //9 流程控制(数值序列2) 输出数字序列 2/1,3/2,5/3,8/5,13/8,21/13...,输出个数由键盘输入。注意输入使用scanf输入 feibonaqi

    //

    //比如:

    //

    //输入 3输出为

    //

    //2/1

    //3/2

    //5/3

    //

    //输入 4 输出为

    //2/1

    //3/2

    //5/3

    //8/5

    //

    //int main(int argc,const char *argv[])

    //{

    //    int n;

    //    int a=1,b=1;

    //    scanf("%d", &n);

    //    for (int i=0; i<n; i++) {

    //        int temp;

    //        printf("%d/%d ", a+b,a);

    //        temp = a+b;

    //        b = a;

    //        a = temp;

    //    }

    //    printf(" ");

    //    return 0;

    //}

    //交换两个两个变量的值

    //int main(int argc,const char *argv[])

    //{

    //    int a=3, b=5;

    //    /*

    //    int tmp = a;

    //    a = b;//a = 5;

    //    b = tmp;// b=3;

    //    printf("a = %d b= %d ", a, b);

    //     */

    //    //不借助中间变量交换a , b 的值

    //    a=a+b;

    //    b=a-b;

    //    a=a-b;

    //    printf("a = %d b= %d ", a, b);

    //    return 0;

    //}

    //流程控制(数值序列3) 输出数字序列 1,2,3,5,8,13,21...,输出个数由键盘输入。注意输入使用scanf输入

    //

    //比如:

    //

    //输入 3输出为

    //

    //1

    //2

    //3

    //

    //输入 4 输出为

    //1

    //2

    //3

    //5

    /*int main(int argc,const char *argv[])

    {

        int n, a=0,b=1;

        scanf("%d", &n);

        

        for (int i=0; i<n; i++) {

            printf("%d ", a+b);

            int tmp = a+b;

            a = b;

            b = tmp;

        }

        return 0;

    }*/

    //求最大公约数

    //辗转相除法

    //a    b        a%b

    //319 377 --->  319

    //377 319 --->   58

    //319 58  --->   29

    //58  29  --->   0

    //29  0

    //control + i

    //int main(int argc, const char *argv[])

    //{

    //    int a, b;

    //    scanf("%d %d", &a, &b);

    //    while (b) {

    //        int tmp = a%b;

    //        a = b;

    //        b = tmp;

    //    }

    //    printf("%d ", a);

    //    return 0;

    //}

    //流程控制(for求阶乘的和 ) 输入n(int类型),打印1!+2!+3!+4!+5!+。。。+n!的值

    //比如:

    //

    //输入:2

    //输出:

    //3

    //

    //输入:3

    //

    //输出:

    //9

    //int main(int argc,const char *argv[])

    //{

    //    int Sn = 0;

    //    int n;

    //    int temp=1;

    //    scanf("%d", &n);

    //    for (int i=1; i<=n; i++) {

    //        temp = i*temp;// n!

    //        Sn += temp;

    //    }

    //    printf("Sn = %d ", Sn);

    //    

    //    return 0;

    //}

    //将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5。

    //n    i     n%i

    //90 / 2 ---> 0

    //45 / 2 ---> 1

    //45 / 3 ---> 0

    //15 / 3 ---> 0

    //5  / 3 ---> 2

    //5  / 4 ---> 1

    //5  / 5 ---> 0

    //1

    //int main(int argc, const char *argv[])

    //{

    //    int n;

    //    scanf("%d", &n);

    //    printf("%d=", n);

    //    for (int i=2; n!=1; i++) {

    //        if (!(n%i)) {

    //            n!=i?printf("%d*", i):printf("%d",i);

    //            n/=i;

    //            i--;

    //        }

    //    }

    //    printf(" ");

    //    return 0;

    //}

    //19. 流程控制(for循环) 输入一个大写字母,如F

    //

    //比如:

    //

    //输入:F

    //

    //输出:

    //

    //     A

    //    ABA

    //   ABCBA

    //  ABCDCBA

    // ABCDEDCBA

    //ABCDEFEDCBA

    /*int main(int argc,const char *argv[])

    {

        char ch;

        scanf("%c", &ch);

        

        for (int i=0; i<ch-'A'+1; i++) {

            for (int j=0; j<ch-i-'A'; j++) {

                printf(" ");

            }

            for (int j=0; j<=i; j++) {

                printf("%c", 'A'+j);

            }

            for (int j=i; j>0; j--) {

                printf("%c", 'A'+j-1);

            }

            printf(" ");

        }

        return 0;

    }

    */

    //21. 流程控制(for循环) 输入一个大写字符,如F

    //

    //比如:

    //

    //输入:F

    //

    //输出:

    //

    //FEDCBA

    // EDCBAB

    //  DCBABC

    //   CBABCD

    //    BABCDE

    //     ABCDEF

    /*int main(int argc,const char *argv[])

    {

        char ch;

        scanf("%c", &ch);

        

        for (int i=0; i<ch-'A'+1; i++) {

            for (int j=0; j<i; j++) {

                printf(" ");

            }

            for (int j=i; j<ch-'A'+1; j++) {

                printf("%c", ch-j);

            }

            for (int j=0; j<i; j++) {

                printf("%c", 'A'+j+1);

            }

            printf(" ");

        }

        return 0;

    }*/

    //输入一个大写字符,如F

    //比如:

    //输入:F

    //输出:

    //FEDCBA

    //EDCBAB

    //DCBABC

    //CBABCD

    //BABCDE

    //ABCDEF

    //

    //输入 B

    //输出:

    //BA

    //AB

    //int main(int argc,const char *argv[])

    //{

    //    char ch;

    //    scanf("%c", &ch);

    //    for (int i=0; i<ch-'A'+1; i++) {

    //        for (int j=i; j<ch-'A'+1; j++) {

    //            printf("%c", ch-j);

    //        }

    //        for (int j=0; j<i; j++) {

    //            printf("%c", 'A'+1+j);

    //        }

    //        

    //        printf(" ");

    //    }

    //    return 0;

    //}

    //输入一个大写字母,如F

    //比如:

    //输入:F

    //输出:

    //A

    //ABA

    //ABCBA

    //ABCDCBA

    //ABCDEDCBA

    //ABCDEFEDCBA

    //

    //输入:C

    //输出:

    //A

    //ABA

    //ABCBA

    /*int main(int argc, const char *argv[])

    {

        char ch;

        scanf("%c", &ch);

        for (int i=0; i<ch-'A'+1; i++) {

            for (int j=0; j<=i; j++) {

                printf("%c", 'A'+j);

            }

            for (int j=i; j>0; j--) {

                printf("%c",'A'+j-1);

            }

            printf(" ");

        }

        return 0;

    }*/

    //输入年月日, 判断是一年中的第多少天

    //2015 1 31 //31

    //2015 3 1  //31 + 28 + 1 = 60

    //2012 3 1  //31 + 29 + 1 = 61

    int main(int argc,const char *argv[])

    {

        int year, month, day;

        int total=0;

        scanf("%d %d %d", &year, &month, &day);

        

        for (int i=1; i<month; i++) {

            switch (i) {

                case 1:

                case 3:

                case 5:

                case 7:

                case 8:

                case 10:

                case 12:

                    total+=31;

                    break;

                case 2:

                    if ((!(year%4) && year%100) || !(year%400)) {

                        total+=29;

                    }

                    else

                    {

                        total+=28;

                    }

                    break;

                case 4:

                case 6:

                case 9:

                case 11:

                    total+=30;

                    break;

                default:

                    break;

            }

        }

        total+=day;

        

        printf("总天数%d ", total);

        return 0;

    }

    让明天,不后悔今天的所作所为
  • 相关阅读:
    html语法规范
    html页面基本结构
    HTML头部结构详解
    文件路径中 / 和 ./ 和 ../的区别
    实体符号
    利用JS修改style属性和添加元素类名(important)
    Less
    Eureka自我保护计算
    Eureka元数据
    EurekaServer源码分析
  • 原文地址:https://www.cnblogs.com/-yun/p/4256761.html
Copyright © 2011-2022 走看看