任务和代码:
/*
*Copyright (c)2017 CSDN学院
*All rights reserved
*文件名称:main.c
*作者: Osseyda
完成日期:2017.9.13
*版本号:v2.
*
*问题描述:输入3个正整数,其中任一数不是正整数,程序输出Invalid number!,然后结束运行。
当第1个数为奇数时,计算后两数之和,当第1个数为偶数时,计算第2数减去第3数的差。
无论哪种情形,当结果超过10时按如下示例输出,否则什么也不输出。
*问题输出:输出一个超过10的数
*/
#include <stdio.h>
#include <stdlib.h>
int main ( ){
int a,b,c,f;
printf("请分别输入三个数:");
scanf("%d%d%d", &a,&b,&c);
if(a>0){
if (b>0){
if(c>0){
if(a%2==0)
f=b-c;
else
f=b+c;
if(f>10)
printf("输出一个大于10的结果为:%d\n",f);
}
else
printf("Invalid number!\n");
}
else
printf("Invalid number!\n");
}
else
printf("Invalid number!\n");
return 0;
}
运行结果:
知识点总结:
if语句的嵌套结构
心得:
刚好与上一题if语句的多分支结构实现个人所得税形成对照,正如开关的串并联。
嵌套就像串联,每一级都必须满足条件;分支结构就像并联,条件之间的地位等价,只要满足其中一个,就能完成对应的实现。
加深了对if语句的理解。