安卓标题栏素材:c语言编程的小问题

来源:百度文库 编辑:高校问答 时间:2024/04/29 03:10:47
main()
{
int year leap;
scanf("%d",&year);
if(year%4==0)
{ if(year%100==0)
{if(year%400==0)
leap=1;
else
leap=0;}
else
leap=1;}
else
leap=0;
if(leap)
printf("%d is",year);
else
printf("%d is not",year);
printf(" a leap year");
}
请问if(leap) 这句能判断leap是不是1还是0?
为什么?

if(leap)
中的leap是个逻辑表达式,
所以是可以判断leap是1还是0;

if(leap)判断leap是0还是非0,在C中,0代表false,非0代表true。
如果true,进入if下面的语句,如果false,进入else下面的语句。
if(leap)
中的leap是个逻辑表达式,
所以是可以判断leap是1还是0;
if(leap)
中的leap是个逻辑表达式,
所以是可以判断leap是1还是0;

if(leap)判断leap是0还是非0,在C中,0代表false,非0代表true。
如果true,进入if下面的语句,如果false,进入else下面的语句。

leap=1时执行下一语句
leap=0时执行esle语句;
当然可以完成其功能.

当然可以。leap为1时执行if后的语句,为0时执行else后的语句。c语言中的表达式真假的判断就是以1和0为标准的。从执行结果也可以看出

他先判断你输入的数是不是闰年,是否符合三个逻辑判断条件,如果符合,leap=1,否则,为0,同是下面是一个条件判断,leap=1输出是某一年是闰年。