编写代码模拟三次判断闰年输入的场景。 最多能输入三次,输入正确,判断闰年,密码错误, 可以重新输入,最多输入三次。三次均错,则提示退出程序。

本文主要是介绍编写代码模拟三次判断闰年输入的场景。 最多能输入三次,输入正确,判断闰年,密码错误, 可以重新输入,最多输入三次。三次均错,则提示退出程序。,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

问题: 编写代码模拟三次判断闰年输入的场景。
能输入三次,输入正确,判断闰年,密码错误, 可以重新输入,最多输入三次。三次均错,则提示退出程序。

这个题跟我之前写的判断闰年有点像

问题:判断1000年-2000年间的闰年
分解问题:1.输入年份,只有三次机会,如果三次内输入成功则跳出循环;若没有成功,则不进行接下来的判断部分.
2.判断闰年(年份被4整除但不被100整除或者被400整除),使用if语句进行判断.


#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>int main() {int year;printf("请输入1000年-2000年以内的年份:");//三次输入机会for (int i = 0; i < 3; i++) {scanf("%d", &year);//判断用户输入数字是否在范围内if (year >= 1000 && year <= 2000) {break;//在范围内跳出循环}//不在范围内,输出还有2-i次机会else if(2 - i){printf("请输入正确范围内的年份,你还有%d次机会:",2 - i);}//当2 - i等于零时, 直接输出没机会了同时year赋值0,不再进行接下来的判断else {printf("\n你没有机会了!\n");year = 0;}}//year==0时,输入时超过三次if (year) {//闰年(年份被4整除但不被100整除||被400整除)if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0) {printf("您输入的年份是闰年\n");}else {printf("您输入的年份不是闰年!\n");}}system("pause");return 0;
}

错输三次后代码结果如下:
pic
三次内正确输入结果如下:
pic

这篇关于编写代码模拟三次判断闰年输入的场景。 最多能输入三次,输入正确,判断闰年,密码错误, 可以重新输入,最多输入三次。三次均错,则提示退出程序。的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/265625

相关文章

nginx -t、nginx -s stop 和 nginx -s reload 命令的详细解析(结合应用场景)

《nginx-t、nginx-sstop和nginx-sreload命令的详细解析(结合应用场景)》本文解析Nginx的-t、-sstop、-sreload命令,分别用于配置语法检... 以下是关于 nginx -t、nginx -s stop 和 nginx -s reload 命令的详细解析,结合实际应

Linux线程之线程的创建、属性、回收、退出、取消方式

《Linux线程之线程的创建、属性、回收、退出、取消方式》文章总结了线程管理核心知识:线程号唯一、创建方式、属性设置(如分离状态与栈大小)、回收机制(join/detach)、退出方法(返回/pthr... 目录1. 线程号2. 线程的创建3. 线程属性4. 线程的回收5. 线程的退出6. 线程的取消7.

golang程序打包成脚本部署到Linux系统方式

《golang程序打包成脚本部署到Linux系统方式》Golang程序通过本地编译(设置GOOS为linux生成无后缀二进制文件),上传至Linux服务器后赋权执行,使用nohup命令实现后台运行,完... 目录本地编译golang程序上传Golang二进制文件到linux服务器总结本地编译Golang程序

Android kotlin中 Channel 和 Flow 的区别和选择使用场景分析

《Androidkotlin中Channel和Flow的区别和选择使用场景分析》Kotlin协程中,Flow是冷数据流,按需触发,适合响应式数据处理;Channel是热数据流,持续发送,支持... 目录一、基本概念界定FlowChannel二、核心特性对比数据生产触发条件生产与消费的关系背压处理机制生命周期

使用Docker构建Python Flask程序的详细教程

《使用Docker构建PythonFlask程序的详细教程》在当今的软件开发领域,容器化技术正变得越来越流行,而Docker无疑是其中的佼佼者,本文我们就来聊聊如何使用Docker构建一个简单的Py... 目录引言一、准备工作二、创建 Flask 应用程序三、创建 dockerfile四、构建 Docker

SpringBoot+Docker+Graylog 如何让错误自动报警

《SpringBoot+Docker+Graylog如何让错误自动报警》SpringBoot默认使用SLF4J与Logback,支持多日志级别和配置方式,可输出到控制台、文件及远程服务器,集成ELK... 目录01 Spring Boot 默认日志框架解析02 Spring Boot 日志级别详解03 Sp

MyBatis-Plus 中 nested() 与 and() 方法详解(最佳实践场景)

《MyBatis-Plus中nested()与and()方法详解(最佳实践场景)》在MyBatis-Plus的条件构造器中,nested()和and()都是用于构建复杂查询条件的关键方法,但... 目录MyBATis-Plus 中nested()与and()方法详解一、核心区别对比二、方法详解1.and()

Spring Security中用户名和密码的验证完整流程

《SpringSecurity中用户名和密码的验证完整流程》本文给大家介绍SpringSecurity中用户名和密码的验证完整流程,本文结合实例代码给大家介绍的非常详细,对大家的学习或工作具有一定... 首先创建了一个UsernamePasswordAuthenticationTChina编程oken对象,这是S

Go语言中nil判断的注意事项(最新推荐)

《Go语言中nil判断的注意事项(最新推荐)》本文给大家介绍Go语言中nil判断的注意事项,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录1.接口变量的特殊行为2.nil的合法类型3.nil值的实用行为4.自定义类型与nil5.反射判断nil6.函数返回的

Java中调用数据库存储过程的示例代码

《Java中调用数据库存储过程的示例代码》本文介绍Java通过JDBC调用数据库存储过程的方法,涵盖参数类型、执行步骤及数据库差异,需注意异常处理与资源管理,以优化性能并实现复杂业务逻辑,感兴趣的朋友... 目录一、存储过程概述二、Java调用存储过程的基本javascript步骤三、Java调用存储过程示