一. 思维导图

二. 练习
1) 终端输入年份,判断是否是闰年,在闰年的基础上判断是否是超级闰年,能被400整除的是超级闰年
#include <stdio.h>
int main(int argc, const char *argv[])
{
int year;
printf("请输入年份:");
scanf("%d", &year);
if (year%400 == 0) {
printf("%d是超级闰年\n", year);
} else {
if((year%4 == 0) && (year%100 != 0)) {
printf("%d是普通闰年\n", year);
} else {
printf("%d不是闰年\n", year);
}
}
return 0;
}
2)终端输入三条边,判断是否能构成三角形(判断两边之和大于第三边),在能构成三角形的基础上判断三角形的类型(等边,等腰和直角)
#include <stdio.h>
int main(int argc, const char *argv[])
{
int l1, l2, l3;
printf("请输入三条边:");
scanf("%d%d%d", &l1, &l2, &l3);
if ((l1+l2)>l3 && (l1+l3)>l2 && (l2+l3)>l1) {
if ((l1 == l2) && (l2 == l3)) {
printf("构成等边三角形\n");
} else if ((l1 == l2) || (l1 == l3) || (l2 == l3)) {
printf("构成等腰三角形\n");
} else if (
(l1*l1 +l2*l2==l3*l3) ||
(l1*l1+l3*l3==l2*l2) ||
(l2*l2+l3*l3==l1*l1)
) {
printf("构成直角三角形\n");
}
} else {
printf("不能构成三角形\n");
}
return 0;
}
3)从终端输入一个字符:如果是大写的 转换成小写,如果是小写的 转换成大写,如果是 0-9 按照 %d 输出对应整型的 0-9,其他字符 转换成 #并输出。
#include <stdio.h>
int main(int argc, const char *argv[])
{
char letter;
printf("请输入一个字母:");
scanf("%c", &letter);
if (letter >= 65 && letter <= 90) {
letter += 32;
} else if (letter >= 97 && letter <= 122) {
letter -= 32;
} else if (letter >= 48 && letter <= 57) {
} else {
letter = '#';
}
printf("输出的是:%c\n", letter);
return 0;
}