P5710 【深基3.例2】数的性质

题目描述
一些数字可能拥有以下的性质:

性质 1:是偶数;
性质 2:大于 4 且不大于 12。
小A 喜欢这两个性质同时成立的数字;Uim 喜欢这至少符合其中一种性质的数字;八尾勇喜欢刚好有符合其中一个性质的数字;正妹喜欢不符合这两个性质的数字。

输入格式
输入一个数字 x(0≤x≤1000)

输出格式
输出这 4 个人是否喜欢这个数字,如果喜欢则输出1,否则输出0,用空格分隔。

输入输出样例
输入
12
输出
1 1 0 0

第一个坑就是1,写完代码记得把1输入试试

我把1这个情况分开了

完整代码

#include<stdio.h>
int main(){
	int a;
	scanf("%d",&a);
	if(a==1){
		printf("0 0 0 1");
	}
	else if(a!=1){
		if(a%2==0&&(a>4&&a<=12))
		printf("1 ");
		else
			printf("0 ");
		if(a%2==0||(a>4&&a<=12))
			printf("1 ");
		else
			printf("0 ");
		if(a%2==0&&(a>4&&a<=12)||a%2!=0&&(a<4&&a>12))
			printf("0 ");
		else
			printf("1 ");
		if(a%2!=0&&(a<=4&&a>12))
			printf("1");
		else
			printf("0");
		}
	return 0;
}

也可以用两个变量分别表示a%2==0a>4&&a<=12

#include<stdio.h>
int main(){
	int a,a1,a2;
	scanf("%d",&a);
	a1=(a%2==0);
	a2=(a>4&&a<=12);
	if(a1&&a2)
		printf("1 ");
	else
		printf("0 ");
	if(a1||a2)
		printf("1 ");
	else
		printf("0 ");
	if((!a1&&a2)||(a1&&!a2))
		printf("1 ");
	else
		printf("0 ");
	if(!a1&&!a2)
		printf("1");
	else
		printf("0");
	return 0;
}

也可以通过


版权声明:本文为weixin_51309151原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。