C语言,判断闰年问题

#include<stdio.h>
void main()
{
int year,a;
printf("请输入年份:");
scanf("%d",&year);
if((year/4==0&&year/100!=0)||(year/400==0)) a=1;
else a=0;
if(a=1)
printf("\n%d此年是闰年\n",year);
else printf("%d此年非闰年\n",year);

}

为什么会出这样的结果呢?有谁知道是哪里出问题了吗?

if((year%4==0&&year%100!=0)||(year%400==0)) a=1;
else a=0;
if(a==1) //是==不是= ,=表示赋值 == 表示判断
printf("\n%d此年是闰年\n",year);
else printf("%d此年非闰年\n",year);
//不是除以,而是取余,也就是计算余数,如果余数为0表示整除。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-12-24
给你改了,你有两个错误,一,你把%写成了/号,二,你把后面判断a的==写成了=号,还有,要注意程序的美观哦。这样也清析易读,容易找到错误。
#include<stdio.h>
void main()
{
int year,a;
printf("请输入年份:");
scanf("%d",&year);
if((year%4==0&&year%100!=0)||(year%400==0))
a=1;
else
a=0;
if(a==1)
printf("\n%d此年是闰年\n",year);
else
printf("%d此年非闰年\n",year);
}
第2个回答  2018-03-30

if((year%4==0&&year%100!=0)||(year%400==0)) a=1;
else a=0;
if(a==1)  //是==不是= ,=表示赋值 == 表示判断
printf("\n%d此年是闰年\n",year);
else printf("%d此年非闰年\n",year);
//不是除以,而是取余,也就是计算余数,如果余数为0表示整除。

拓展:

1、C语言是一门通用计算机编程语言,应用广泛。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。尽管C语言提供了许多低级处理的功能,但仍然保持着良好跨平台的特性,以一个标准规格写出的C语言程序可在许多电脑平台上进行编译,甚至包含一些嵌入式处理器(单片机或称MCU)以及超级电脑等作业平台。

2、二十世纪八十年代,为了避免各开发厂商用的C语言语法产生差异,由美国国家标准局为C语言订定了一套完整的国际标准语法,称为ANSI C,作为C语言最初的标准。

本回答被网友采纳
第3个回答  2011-12-24
判断句有问题,输入2000,2000/4=500,2000/100=20,2000/400=5,而2000是闰年
第4个回答  2012-12-17
#include<stdio.h>
int main()
{
int year;
scanf("%d",&year);
if(year%4==0&&year%100!=0||year%400==0)
printf("Yes\n");
else
printf("No\n");
return 0;
}

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网