#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
#include<string.h>
//
//int main()
//{
// int a = 7;
// int b=a << 1;
// //
// //左移操作符
// //移动的是二进制位
// //
// printf("a=%d\n", a);//7
// printf("b=%d\n", b);//14
// return 0;
//}
//& 与 都是才为1
//| 或 有1就是1 两个同时为0才0
// ^ 异或 相同为0,相异为1
//面试题
//不能创建临时变量(第三个变量),实现两个数的交换
// 异或实现两个数交换,有交换律作用
//int main()
//{
// int a = 3;
// int b = 5;
// printf("before:a=%d b=%d\n", a, b);
// a = a ^ b;
// b = a ^ b;
// a = a ^ b;
// printf("after:a=%d b=%d\n", a, b);
// return 0;
//}
//int main()
//
//{
// int a = 3;
// if (a)//为真进入
// {
//
// }
// if (!a)//为假进入if
// {
//
// }
//}
//int main()
//{
// int a = 13;
// a |= (1 << 4);
// printf("%d\n", a);
// return 0;//29
//
//}
//int main()
//{
// int a = 10;
// printf("%d\n", a--);//10
// printf("%d\n", a);//9
//}
//判断闰年
int year(int y)
{
if (((y % 4 == 0) && (y % 100 != 0)) ||(y % 400 == 0))
{
printf("是\n");
}
else
{
printf("不是\n");
}
}
int main()
{
int a = 0;
scanf("%d", &a);
year(a);
return 0;
}
//&& 左边为假,右边就不算了
//||左边为真,右边就不计算了
//结构体的大概
//struct Stu
//{
// char name[20];
// int age;
// double score;
//};
//
//
//void set_stu(struct Stu* ps)
//{
// /*strcpy((*ps).name,"zhangsan");
// (*ps).age = 12;
// (*ps).score = 100.0;*/
// strcpy(ps->name,"zhangsan");//结结构体指针->成员
// ps->age = 20;//(*ps).age=20
// ps->score = 100.0;
//};
//
//void print_stu(struct Stu ss)
//{
// printf("%s %d %.2lf\n", ss.name, ss.age, ss.score);//结构体对象.成员
//}
//
//int main()
//{
// struct Stu s = { 0 };
// set_stu(&s);
// print_stu(s);
// return 0;
//}
#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
//int main()
//{
// char a = 5;
// //补码0000 0101
//
// char b = 126;
// // 0111 1110
//
// char c = a + b;
// // 1000 0011
// // 变反码1111 1100
// // 变原码1111 1101
// //用补码相加
// printf("%d\n", c);//-125 //字符型转换整型 //打印的是原码
// return 0;
//}
//int main()
//{
// //大小小于整型
// //char占一个字节,但是参与运算,变成表达式,就会发生整型提升
// char c = 1;
// printf("%u\n", sizeof(c));//1
// printf("%u\n", sizeof(+c));//4
// printf("%u\n", sizeof(-c));//4
// return 0;
//}
//我们写出的表达式如果不能通过操作符的属性确定位移的计算路径,那这个表达式就是存在问题的
//int main()
//{
// int a = 1;
// int b = (++a) + (++a) + (++a);
// printf("%d", b);
//}
//小兔子走台阶,一次只能走一个或者一次跨两个台阶
//int fib(int n)
//{
// if (n <= 2)
// {
// return n;
// }
// if (n > 2)
// {
// fib(n - 1) + fib(n - 2);
// }
//
//}
//
//int main()
//{
// int i = 0;
// scanf("%d", &i);
// //计算
// int m = fib();
// //输出
// printf("%d\n", m);
// return 0;
//}
//设置一个自定义大小数组,输入n个数字,删除其中某个数字,并重新打印
//int main()
//
//{
// int arr[50];
// int n = 0;
// scanf("%d", &n);
// //接受n个数字
// int i = 0;
// for (i = 0; i < n; i++)
// {
// scanf("%d ", &arr[i]);
// }
//
// //接受删除的值
// int del = 0;
// scanf("%d",&del);
// int j = 0;
// for (i = 0; i < n; i++)
// {
// if (arr[i] != del)
// {
// arr[j] = arr[i];//将i放到j
// j++;//j移动到下一个空间
// //i也进入循环+1,跳到下一个
// }
// }
// //输出
// for (i = 0; i < j; i++)
// {
// printf("%d ", arr[i]);
// }
//
// return 0;
//}
//输入n个成绩,换行输出n个成绩中最高分数和最低分数的差
//int main()
//{
// int i = 0;
// int n = 0;
// int arr[10];
// scanf("%d", &i);
// //输入
// for (n = 0; n < i; n++)
// {
// scanf("%d", &arr[n]);
// }
//
// //找出最大值
// int max = arr[0];
// for (n= 1; n < i; n++)
// {
// if (arr[n] > max)
// max = arr[n];
// }
//
//
// //找出最小值
// int min = arr[0];
// for (n = 0; n < i; n++)
// {
// if (arr[n] < min)
// {
// min = arr[n];
// }
//
// }
// printf("%d\n", max - min);
// return 0;
//}
//简化版
//int main()
//{
// int i = 0;
// scanf("%d", &i);
// int arr[5];
// int max = 0;
// int min = 100;
//
// int n = 0;
// for (n = 0; n < i; n++)
// {
// scanf("%d", &arr[n]);
// if (arr[n] > max)
// {
// max = arr[n];
// }
// if (arr[n] < min)
// {
// min = arr[n];
// }
// }
// printf("%d\n", max - min);
// return 0;
//}
//字母大小写转换
//int main()
//{
// char ch = 0;
//
// while (scanf("%c", &ch) == 1)//循环输入
// {
// if (ch >= 'a' && ch <= 'z')
// printf("%c\n", ch - 32);//小写减-32 = 大写
// else if (ch >= 'A' && ch <= 'Z')
// printf("%c\n", ch + 32);
// }
// return 0;
//}
//判断是否为字母
//int main()
//{
// char i = 0;
// //不加getchar 就在%c前加个空格,抵消掉
// while (scanf(" %c", &i)==1)
// {
// if ((i >= 'A' && i <= 'Z' || i >= 'a' && i <= 'z'))
// //不要if语句 ,直接用库函数if(isalpha(i))也可以
// printf("%c is yes\n", i);
// else
// printf("%c is no\n", i);
// getchar();//把斜杆n吃掉
// }
// return 0;
//}
//三个数的最大值
//int main()
//{
// int i = 0;
// int max = 0;
// int score = 0;
// for (i=0;i<3;i++)
// {
// scanf("%d", &score);//输入三个数
// if (score > max)
// max = score;
// }
// printf("%d\n", score);
// return 0;
//
//}
//水仙花
//#include<math.h>
//int main()
//{
// int i = 0;
// for (i = 10000; i < 99999; i++)
// {
// int sum = 0;
// int j = 0;
// for (j = 1; j <= 4; j++)
// {
// int k = (int)pow(10, j);
// //sum += (i % k) * (i / k);
// sum = sum + (i % k) * (i / k);
// }
// if (sum == i)
// {
// printf("%d ", i);
// }
// }
//
// return 0;
//}
//