zoukankan      html  css  js  c++  java
  • c语言中程序的循环控制 变量的非常规变化例题

    1、显示所有的小于输入的整数的所有2的乘方

    while语句:

    #include <stdio.h>
    
    int main(void)
    {
        int i = 2, j;
        puts("please input an integer.");
        printf("j = "); scanf("%d", &j);
        
        while (i <= j)
        {
            printf("%d ", i);
            i *= 2;
        }
        putchar('\n');
        
        return 0;
    }

    for语句:

    #include <stdio.h>
    
    int main(void)
    {
        int i, j;
        puts("please input an integer.");
        printf("j = "); scanf("%d", &j);
        
        for(i = 2; i <= j; i *= 2)
        {
            printf("%d ", i);
        }
        putchar('\n');
        
        return 0;
    }

    do语句

    #include <stdio.h>
    
    int main(void)
    {
        int i = 2, j;
        puts("please input an integer.");
        printf("j = "); scanf("%d", &j);
        
        do
        {
            printf("%d ", i);
            i *= 2;
        }
        while(i <= j);
        putchar('\n');
        
        return 0;
    }

    2、逆向输出输入的正整数(直接输出、保存新变量后输出)

    while语句:

    直接输出

    #include <stdio.h>
    
    int main(void)
    {
        int i;
        puts("please input an integer.");
        do
        {
            printf("i = "); scanf("%d", &i);
            if(i <= 0)
                puts("the range of i is > 0");
        }
        while(i <= 0);
        
        while(i > 0)
        {
            printf("%d", i % 10);
            i /= 10;
        }
        putchar('\n');
        
        return 0;
    }

    保存变量后输出:

    #include <stdio.h>
    
    int main(void)
    {
        int i, j = 0;
        puts("please input an integer.");
        do
        {
            printf("i = "); scanf("%d", &i);
            if(i <= 0)
                puts("the range of i is > 0");
        }
        while(i <= 0);
        
        while(i > 0)
        {
            j = j * 10 + i % 10;
            i /= 10;
        }
        printf("%d\n", j);
        
        return 0;
    }

    2、for语句

    直接输出

    #include <stdio.h>
    
    int main(void)
    {
        int i;
        puts("please input an integer.");
        do
        {
            printf("i = "); scanf("%d", &i);
            if(i <= 0)
                puts("the range of is > 0 ");
        }
        while(i <= 0);
        
        for(i; i > 0; i /= 10)
        {
            printf("%d", i % 10);
        }
        putchar('\n');
        
        return 0;
    }

    保存变量输出

    #include <stdio.h>
    
    int main(void)
    {
        int i, j = 0;
        puts("please input an integer.");
        do
        {
            printf("i = "); scanf("%d", &i);
            if (i <= 0)
                puts("the range is > 0");
        }
        while(i <= 0);
        
        for(i; i > 0; i /= 10)
        {
            j = j * 10 + i % 10;
        }
        printf("%d\n", j);
        
        return 0;
    }

    3、do语句

    直接输出

    #include <stdio.h>
    
    int main(void)
    {
        int i;
        puts("please input an integer.");
        do
        {
            printf("i = "); scanf("%d", &i);
            if(i <= 0)
                puts("the range is > 0");
        }
        while(i <= 0);
        
        do
        {
            printf("%d", i % 10);
            i /= 10;
        }
        while(i > 0);
        putchar('\n');
        
        return 0;
    }

    保存变量后输出:

    #include <stdio.h>
    
    int main(void)
    {
        int i, j = 0;
        puts("please input an integer.");
        do
        {
            printf("i = "); scanf("%d", &i);
            if (i <= 0)
                puts("the range is > 0");
        }
        while(i <= 0);
        
        do
        {
            j = j * 10 + i % 10;
            i /= 10;
        }
        while(i > 0);
        printf("%d\n", j);
        
        return 0;
    }
  • 相关阅读:
    Extensions in UWP Community Toolkit
    Rust 算法排位记
    【华为云技术分享】mongos-sharding连接池配置
    【华为云技术分享】opensuse使用zypper安装软件
    MongoDB经典故障系列一:数据库频繁启动失败怎么办?
    刚刚,华为云找到了更安全更卫生的乘坐电梯方式
    攻防学习
    通过FTP无法删除文件
    photoswipe-3.0.5 手机端横屏后竖屏图片无法归位问题解决
    【转载】apache配置虚拟主机以及虚拟目录详解
  • 原文地址:https://www.cnblogs.com/liujiaxin2018/p/14711914.html
Copyright © 2011-2022 走看看