Оператор if.
Формат:
if (выражение) оп1;
[else оп2;]
Примеры:
int t=2, b=7, r=3;
if (t>b )
{
if (b<r) r=b;
}
else r=t;
//r = 2
________
int t=2, b=7, r=3;
if (t>b )
if (b<r) r=b;
else r=t;
//r = 3
________
int t=2, b=7, r=3;
if (t=b) r=8;
else r=9;
//t = 8
//r = 7
Задача.
Даны три целых числа, представляющих собой день, месяц и год. Определить возможна ли указанная дата.
#include
int main()
{
int day, month, year;
char flag;
printf("Enter date (DD MM YYYY) ");
scanf("%d%d%d", &day, &month, &year);
if (year<1 || month<1 || month>12 || day<1 || day>31) {
flag = 0;
}
else
{
unsigned char DayInMonth;
if (month == 4 || month == 6 || month == 9 || month == 11) {
DayInMonth = 30;
}
else
{
if (month == 2) {
/*Высокосным считается год, номер которого делится на 400 или делится на 4, но не делится на 100*/
if (year % 400 == 0 || (year % 4 == 0 && year % 100 != 0)) {
DayInMonth = 29;
}
else
{
DayInMonth = 28;
}
}
else
{
DayInMonth = 31;
}
}
flag = day > DayInMonth ? 0 : 1;
}
if (flag) {
printf("Possible date\n");
}
else
{
printf("Impossible date");
}
getchar(); getchar();
return 0;
}

