zoukankan      html  css  js  c++  java
  • 给你的程序加上逻辑

    for (int i = 1, k = 0; i <= 48; i++, k += 2) printf("%d
    ", k);
    

    上面这段程序中,我们用到了两个同步信息变量,i 和 k,i 从 1 到 48,保证循环了 48 次;代码中“k+=2”表示 k 每次增加 2 ,也就是说,在这个过程中,i 遍历了 1 到 48 这 48 个整型值,而 k 同步地遍历了从 0 开始的前 48 个偶数。这段代码的意思其实就是打印出从 0 开始后的共 48 个偶数,即 0、2、4……92、94。
    如果用 while 来实现这个目的,怎么写?

    	int i=1,k=0;
    	while(i<=48)
    	{
    		printf("%d
    ",k);
    		k+=2;
    		i++;
    	}
    

    思考题:打印乘法表
    使用循环和条件判断,打印一个格式优美的 66 乘法表
    要求 1:输出内容及样式参照下面给出的样例
    要求 2:每两列之间用 字符进行分隔,行尾无多余 字符

    1*1=1
    1*2=2  2*2=4
    1*3=3  2*3=6  3*3=9
    1*4=4  2*4=8  3*4=12  4*4=16
    1*5=5  2*5=10  3*5=15  4*5=20  5*5=25
    1*6=6  2*6=12  3*6=18  4*6=24  5*6=30  6*6=36
    
    	for(i=1;i<=6;i++)
    	{
    		for(j=1;j<=i;j++)
    		{
    			printf("%d*%d=%d	",j,i,i*j);
    		}
    		printf("
    ");
    	}
    

    闰年的判定条件

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

    “日期计算器”程序完成
    准备完了所有的基础技能后,就让我们来完成开始说的那个任务吧,我们来思考一下哈,首先我们需要有一个循环,循环每一次,让计算机帮我们计算一次下一天的日期。每次在计算下一天日期的过程中,先让日子加 1,判断是否跨月,如果跨过了一个月份,就让日子从 1 开始,让月份加 1,再判断是否跨年,如果跨年了,就让月份从 1 开始,年份加 1。
    如上的过程中,有一个关键问题需要你注意,就是 2 月份的月份天数的计算方法,咱们来简单回顾一下闰年的规则,年份满足以下其中一条即为闰年:
    能被 4 整除,但不能被 100 整除;
    能被 400 整除。

    #include <stdio.h>
    
    int main() {
        int y, m, d, X,i; // 定义存储 年月日 和 X 的变量
        scanf("%d%d%d", &y, &m, &d); // 读入年月日
        scanf("%d", &X); // 读入 X 值
        for (i = 0; i < X; i++) { // 循环 X 次,每次向后推一天
            d += 1;
            switch (m) {
                case 1:
                case 3:
                case 5:
                case 7:
                case 8:
                case 10:
    			case 12: { // 第一部分逻辑
                    if (d > 31) d = 1, m += 1;
                    if (m == 13) m = 1, y += 1;
                }; break;
                case 4:
                case 6:
                case 9:
                case 11: { // 第二部分逻辑 
                    if (d > 30) d = 1, m += 1;
                } break;
                case 2: { // 第三部分逻辑
                    if ((y % 4 == 0 && y % 100 != 0) || y % 400 == 0) {
                        if (d > 29) d = 1, m += 1;
                    } else if (d > 28) {
                        d = 1, m += 1;
                    }
                } break;
            }
        }
        printf("%d %d %d
    ", y, m, d);
        return 0;
    } 
    
    
  • 相关阅读:
    未进入Kali Linux系统修改修改密码的方法
    SQL 修改字段名,数据类型,增加字段
    在 SAE 上部署 ThinkPHP 5.0 RC4
    在 C# 里使用 F# 的 option 变量
    Retinex图像增强和暗通道去雾的关系及其在hdr色调恢复上的应用
    暗通道去雾算法的python实现
    解析hdr图像文件的python实现
    博客说明
    retinex图像增强算法的研究
    我知道的JavaScript设计模式(桥接)应用之验证器
  • 原文地址:https://www.cnblogs.com/liugangjiayou/p/12580802.html
Copyright © 2011-2022 走看看