为什么1对2不对?

来源:百度知道 编辑:UC知道 时间:2024/06/09 06:39:27
1. #include<iostream>
using namespace std;
void main()
{
int i;
cin>>"输入年份:";
cin>>i;
if(((i%4==0)&&(i&100!=0))||(i%400==0))
{

}else{ cout<<i<<"是闰年"<<endl;
cout<<i<<"不是闰年"<<endl;

}

}

2. #include<iostream>
using namespace std;
void main()
{
int i;
cout<<"输入年份:";
cin>>i;
if(((i%4==0)&&(i&100!=0))||(i%400==0))
{
cout<<i<<"是闰年"<<endl;
else
cout<<i<<"不是平年"<<endl;

}

}

两个都不对
#include<iostream>
#include<stdlib.h>
using namespace std;
int main()
{
int i;
cout<<"输入年份:";
cin>>i;
if(((i%4==0)&&(i&100!=0))||(i%400==0))
{
cout<<i<<"是闰年"<<endl;
}
else
cout<<i<<"不是闰年"<<endl;

system("pause");
return 0;
}

你对if else语句还不是很熟悉哦

1. #include<iostream>
...
if(((i%4==0)&&(i&100!=0))||(i%400==0))
{
<----满足真值条件的语句呢?你这里要表达的意思是, 如果满足了if()条件,不执行任何,直接运行else里面的东西.而else里面又把两条都包括了,所以输出一定是i既是闰年又不是闰年,所以你的这个if()语句是等于没写..
}else{ ..... <----看这里说明你是知道用但是放错地方而已..

2. #include<iostream>
using namespace std;
void main()
{
int i;
cout<<"输入年份:";
cin>>i;
if(((i%4==0)&&(i&100!=0))||(i%400==0))
{ <