开心数,既能被2整除又能被5整除;乐极生悲数,开心数中能被3整除;伤心数,既能被3整除又能被7整除;否极泰来数,伤心数中能被2整除。

四种数的定义如下:开心数,既能被2整除又能被5整除;乐极生悲数,开心数中能被3整除;伤心数,既能被3整除又能被7整除;否极泰来数,伤心数中能被2整除。

请设计一个程序完成如下功能,请用户输入一个整数,判断该整数到底属于哪种类型。

(1)画出程序的流程图

(2)完成程序的编码、测试

#include <stdio.h>
int main() {
int a;
printf("请输入一个整数:");
scanf("%d", &a);
if (a % 2 == 0 && a % 5 == 0) {
if (a % 3 == 0) {
if (a % 7 == 0) {
printf("是完美数\n%d", a);
} else {
printf("乐极生悲数\n%d", a);
}
} else {
printf("开心数\n%d", a);
}
} else if (a % 3 == 0 && a % 7 == 0) {
if (a % 2 == 0) {
printf("否极泰来数\n%d", a);
} else {
printf("伤心数\n%d", a);
}
} else {
printf("普通数\n%d", a);
}
}