2.4嵌套多重if else 的闰年判断以及bool变量的用法

#include<stdio.h>
#include<stdbool.h>

int main()
{
    int year;
    bool leap; //把leap定义为bool ,则原来的1就是true,0 就是false
    scanf("%d", &year);

    if(year % 4 != 0)
      leap = false;//第一层,不能被4整除,不是闰年。
    else if(year % 100 != 0)
      leap = true;//第二层,否则,能被4整除,接下来按顺序判断不能被100整除,暂时定为闰年(实际上就是闰年)。
    else if(year % 400 != 0)
      leap = false;//第三层,否则,不能被4和100整除,看能否被400 整除,不能,不是闰年。
    else          //第四层,否则, 不能被4和100整除,能被400整除,是闰年。
      leap = true;
      if(leap){   //leap == true 和 leap == 1 以及 leap 等价。注意如果用printf %d 输出true ,结果为1.
          printf("%d is leap", year);
      } else{
          printf("%d is not leap", year);
      }
      return 0;
}

1.bool是逻辑变量,但是true和false 是逻辑常量。这样做提高可读性。

2.注意,非零的数值(包括负数)赋值给一个逻辑变量,会自动变为1(true)。

3.逻辑变量初始化的值是0。

4.逻辑型变量可以不用头文件,然后以“_Bool”直接定义。

时间: 2024-08-01 16:53:44

2.4嵌套多重if else 的闰年判断以及bool变量的用法的相关文章

蓝桥杯 BASIC-1~3 闰年判断、01子串、字母图形

闰年判断 [AC代码]: #include <iostream> #include <algorithm> using namespace std; int main() { int y = 0; cin >> y; if (((0==y%4)&&(0!=y%100))||(0==y%400)) cout << "yes"; else cout << "no"; } 01子串 [AC代码]:

蓝桥杯 基础练习 闰年判断【基础题】

基础练习 闰年判断 时间限制:1.0s   内存限制:256.0MB 问题描述 给定一个年份,判断这一年是不是闰年. 当以下情况之一满足时,这一年是闰年: 1. 年份是4的倍数而不是100的倍数: 2. 年份是400的倍数. 其他的年份都不是闰年. 输入格式 输入包含一个整数y,表示当前的年份. 输出格式 输出一行,如果给定的年份是闰年,则输出yes,否则输出no. 说明:当试题指定你输出一个字符串作为结果(比如本题的yes或者no,你需要严格按照试题中给定的大小写,写错大小写将不得分. 样例输

软件测试技术(四)——闰年判断器+ int.Parse错误如何解决

目标程序 本次所测试的目标程序是一个闰年判断器,我们知道,一般情况下年份被4整除就可以了,但是如果遇到百年的时候还需要被400整除,于是有了如下的逻辑判断: bool isRunNian = false; if (year > 0) { if ((year % 100 == 0 && year % 400 == 0) || (year % 100 != 0 && year % 4 == 0)) { isRunNian = true; } } 测试方法介绍—Syntax

lqb 基础练习 闰年判断

基础练习 闰年判断 时间限制:1.0s   内存限制:256.0MB 问题描述 给定一个年份,判断这一年是不是闰年. 当以下情况之一满足时,这一年是闰年: 1. 年份是4的倍数而不是100的倍数: 2. 年份是400的倍数. 其他的年份都不是闰年. 输入格式 输入包含一个整数y,表示当前的年份. 输出格式 输出一行,如果给定的年份是闰年,则输出yes,否则输出no. 说明:当试题指定你输出一个字符串作为结果(比如本题的yes或者no,你需要严格按照试题中给定的大小写,写错大小写将不得分. 样例输

软件测试:闰年判断

1 #include<stdio.h>  void main()  {    2 int year, leap;   3     scanf("%d",&year);  4         if (year%4==0)         {    if (year%100==0)     {     if (year%400==0)  leap=1;     5   6   7 else leap=0;  8         }  9         else  le

运算符和表达式 、 分支结构 例题 闰年判断

某年份只需要满足下列两个条件之一,即可认定是闰年: 年份可以被 4 整除且不能被 100 整除: 年份可以被400 整除. 使用三目运算符,构建表示判断结果的 String 类型信息,并输出到控制台.代码如下所示: 1 import java.util.Scanner; 2 public class LeapYear { 3 public static void main(String[] args) { 4 Scanner scanner = new Scanner(System.in); 5

有闰年判断的日期正则表达式

进入正题之前,我们需要澄清两个概念: 一,什么是合法的日期范围?对于不同的应用场景,这个问题有不同的解释.这里采纳MSDN中的约定: DateTime 值类型表示值范围在公元(基督纪元)0001 年 1 月 1 日午夜 12:00:00 到公元 (C.E.) 9999 年 12 月 31 日晚上 11:59:59 之间的日期和时间. 二,关于闰年的阐释.人民教育出版社小学数学室的解释浅明易懂(mediawiki等都没说明为什么整百年份必须是400的倍数时才是闰年): 关于公历闰年是这样规定的:地

C语言实现1000--2000的闰年判断

 判断1000年---2000年之间的闰年 #include <stdio.h>int main(){ int year=0; int num=0; for(year=1000;year<=2000;year++) {  if((year%4==0&&year%100!=0)||(year%400==0))  {   printf("%d ",year);   num++;  } } printf("num=%d\n",num); 

软件测试实例之闰年判断

一.需求 测试输入年份是否为闰年,并能防止非法输入 二.需求分析 1. 显示一个输入框以供输入,提交按钮以供提交输入: 2. 过滤非法输入,当且仅当输入字符全为数字而数字不为零(注:公元0年不存在)时方才做进一步处理,否则提示输入错误: 用HTML&JavaScript编写只需: function checkNum(value) { //value为输入框传入的值 var Reg = /^[0-9]*$/; if (Reg.test(value)) return true; //输入正确 ret