为了考研复试重拾C语言,开练第二篇——判断是否是否是闰年(以及对&&与&不同的分析)

闰年判断条件:

公历年份是4的倍数,且不是100的倍数,为普通闰年。公历年份是整百数,且必须是400的倍数才是世纪闰年。(摘自百度)

代码:

#include<stdio.h>
main(){
   int n;
   printf("请输入年份:");
   scanf("%d",&n);
   if(n%4==0&&n%100!=0||n%400==0){
      
	  if(n%400==0){
	     printf("是世纪闰年");
	  }else{
	     printf("是普通闰年");
	  }
   }else{
      printf("不是闰年");
   }
}

总结:
在编写程序if判断语句时,对于条件的判断一开始用的单&和单|,原因:与学Java时的判断语句混了。
&与&&在Java中区别:

1、&和&&都可以用作逻辑与的运算符,表示逻辑,当运算符两边的表达式的结果都为true时,整个运算结果才为true,否则,只要有一方为false,则结果为false。

2、&&还具有短路的功能,即如果第一个表达式为false,则不再计算第二个表达式。
(记得Python中好像也遵循这个知识,抱歉学的时间太长了,记不清了,不对的话,勿喷)

3、&则需要判断所有条件(也就是正常规律)。
C中的&和&&的区别:

1.运算符性质不同。

&是一个位运算符。

&&是一个逻辑运算符。

2.作用不同。

&是将两个二进制的数逐位相与,结果是相与之后的结果。

&&就是判断两个表达式的真假性,只有两个表达式同时为真才为真,有一个为假则为假,具有短路性质。

3.用途限制。

&除了是一个位运算符,也是取地址符。

&&就是一个单纯的逻辑运算符,没有任何其他含义。

(|与||同上)

(作为大学生会学很多基础知识,长时间不看就会混,和我一样。如果你是大学生请及时复习自己的过往知识)
(以上&与&&不同区别均来自百度)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值