目录
1
//#/include<stdio.h>
//#include<math.h> 例4.1 输入三角形的三条边长,判断能否构成三角形,若能,输出三角形的面积
//int main()
//{
// int a, b, c;
// float area;
// double s;
// printf("三角形的三条边长:");
// scanf_s("%d,%d,%d", &a, &b, &c);
// s = (a + b + c) / 2.0;
// if (a + b <= c || b + c <= a || a + c <= b)
// printf("不构成三角形");
// else
// {
// area = sqrt(s * (s - a) * (s - b) * (s - c));
// printf("面积:%f", area);
// }
// return 0;
//}
2
//#include<stdio.h> 例4.3 关系运算示例,0为假,1为真
//int main()
//{
// int i = 10, j = 20, k = 30;
// char c = 'm';
// float x = 13e+5, y = 10.85;
// printf("%d,%d,", 'a' + 5 < c, -i - 2 * j >= k + 1);
// printf("%d,%d,", 1 < j < 5, x - 5.25 <= x + y);
// printf("%d,%d,", i + j + k == -2 * j, k == j == i + 5);
// return 0;
//}
3
//#include<stdio.h> 例4.5 逻辑运算示例
//int main()
//{
// int a = 3, b = 3, c = 2, d;
// printf("%d,", !a && !b && c);
// printf("%d,", !a || !b || c);
// printf("%d\n", a >= b && b > c);
// d = c-- || (b = 6) && a++;
// printf("a=%d,b=%d,c=%d,d=%d\n", a, b, c, d);
// return 0;
//}
4
//#include<stdio.h> 例4.6 用条件表达式求两个数中的较大数
//int main()
//{
// int x, y;
// printf("输入两个整数:");
// scanf_s("%d,%d", &x, &y);
// printf("两个整数的最大数为:%d", x > y ? x : y);
// return 0;
//}
5
//#include<stdio.h> 例4.7 使用双分支if语句求两个数中的最大数
//int main()
//{
// int a, b;
// printf("易学文最棒:");
// scanf_s("%d%d", &a,&b);
// if (a > b)
// {
// printf("最大数:%d", a);
// }
// else
// {
// printf("最大数:%d", b);
// }
// return 0;
//}
6
//#include<stdio.h> 例4.8 输入X的值,求Y的值
#include<math.h>
//int main()
//{
// double x, y;
// printf("易学文最棒:");
// scanf_s("%lf", &x);
// if (x <= 1)
// {
// y = exp(x); 指数函数exp(x)
// }
// else
// {
// y = pow(x, 2) - 1;
// }
// printf("f(%f)=%.2f", x, y);
// return 0;
//}
7
// #include<stdio.h> 例4.9 输入一个实数,求其绝对值(单分支if语句)
//int main()
//{
// float a;
// scanf_s("%f", &a);
// if (a < 0)
// a = -a;
// printf("%f", a);
// return 0;
//}
8
//#include<stdio.h> 例4.11 输入3个实数,要求按从小到大的顺序输出
//int main()
//{
// float a, b, c,t;
// scanf_s("%f,%f,%f", &a, &b, &c);
// if (a > b)
// {
// t = a;a = b;b = t;
// }
// if (a>c)
// {
// t = a;a = c;c = t;
// }
// if (b>c)
// {
// t = b;b = c;c = t;
// }
// printf("%f,%f,%f",a,b, c);
// return 0;
//}
9
//#include<stdio.h> 例4.12 输入三个任意整数,求最大值
//int main()
//{
// int a, b, c, max;
// printf("易学文最棒:");
// scanf_s("%d%d%d", &a, &b, &c);
// if (a > b)
// if (a > c)
// max = a;
// else
// max = c;
// else
// if (b > c)
// max = b;
// else
// max = c;
// printf("max=%d", max);
// return 0;
//}
10
//#include<stdio.h> 例4.13 输入一个X的值,按以下函数计算并输出Y的值
//int main()
//{
// int x, y;
// scanf_s("%d", &x);
// if (x < 0)
// y = 1;
// else
// if (x == 0)
// y = 0;
// else
// y = -1;
// printf("y=%d\n", y);
// return 0;
//}
11
/#include<stdio.h> 例4.14 输入x的值,按以下分段函数计算并输入y的值
//#include<math.h>
//int main()
//{
// float x, y;
// printf("易学文最棒:");
// scanf_s("%f", &x);
// if (x < 2)
// y = 2 * x;
// else if (x <= 10)
// y = 7 - 3 * x;
// else
// y = 1 - cos(x);
// printf("y=%0.6f", y);
// return 0;
//}
12
//#include<stdio.h> 例4.15 输入一个字符,若小写则转换为大写,若大写则转换为小写,否则转换为ASCII码表中下一字符
//int main()
//{
// char c1, c2;
// printf("输入一个字符:");
// c1 = getchar(); /*键盘输入一个字符赋值给变量c1*/
// if (c1 >= 'a' && c1 <= 'z')
// c2 = c1 - 32;
// else if (c1 >= 'A' && c1 <= 'Z')
// c2 = c1 + 32;
// else
// c2 = c1 + 1;
// putchar(c2); /*输出变量字符的值*/
// return 0;
//}
13
//#include<stdio.h> 例4.16 输入一个月份值,输出该月份是第几季度
//int main()
//{
// int month;
// printf("易学文最棒:");
// scanf_s("%d", &month);
// switch ((month - 1) / 3)
// {
// case 0:
// printf("%d是第一季度", month);
// break;
// case 1:
// printf("%d是第二季度", month);
// break;
// case 2:
// printf("%d是第三季度", month);
// break;
// case 3:
// printf("%d是第四季度", month);
// break;
// default:
// printf("输入错误");
// break;
//}
// return 0;
//}
14
//#include<stdio.h> 例4.17 根据键盘输入的年月,输出该年月的天数
//int main()
//{
// int year, month, days;
// printf("请输入年,月:");
// scanf_s("%d,%d", &year, &month);
// switch (month)
// {
// case 1:
// case 3:
// case 5:
// case 7:
// case 8:
// case 10:
// case 12:
// days = 31;
// break;
// case 4:
// case 6:
// case 9:
// case 11:
// days = 30;
// break;
// case 2:
// if (year % 400 == 0 || year % 4 == 0 && year % 100 != 0) /*满足此条件的是闰年*/
// days = 29; /*闰年的2月份为29天*/
// else
// days = 28; /*平年的2月份为28天*/
// break;
// }
// printf("%d年%d月的天数是%d天\n", year, month, days);
// return 0;
//}
15
//#include<stdio.h> 例4.18 使用switch语句编写例4.14的程序
//#include<math.h>
//int main()
//{
// int expression;
// float x, y;
// printf("请输入x的值:");
// scanf("%f", &x);
// expression = (int)(1 * (x < 2) + 2 * (x >= 2 && x <= 10) + 3 * (x > 10));
//
// switch (expression)
// {
// case 1:
// y = 2 * x;
// break;
// case 2:
// y = 7 - 3 * x;
// break;
// case 3:
// y = 1 - cos(x);
// break;
// }
// printf("y=%0.5f\n", y);
// return 0;
//}
16
//#include<stdio.h> 例4.19 输入X,计算并输出分段函数Y的值(保留两位小数)
//#include<math.h>
//int main()
//{
// float x, y;
// scanf_s("%f", &x);
// if (x < 0)
// y = pow(x, 5) + 2 * x + 1 / x; /*pow表示函数求幂*/
// else
// y = sqrt(x); /*sqrt表示函数求平方根*/
// printf("x=%.2f,y=%.2f", x, y);
// return 0;
//}
17
1.if语句的标准格式
2.if语句的嵌套格式
3.if语句的多分支格式
//#include<stdio.h> 例4.20 判断输入的年份是否为闰年(if语句的标准格式)
//int main()
//{
// int year, leap;
// printf("输入年份:");
// scanf_s("%d", &year);
// if (year % 4 == 0 && year % 100 != 0)
// leap = 1;
// else
// leap = 0;
// if (leap)
// printf("%d是闰年\n", year);
// else
// printf("%d不是闰年\n", year);
// return 0;
//}
//#include<stdio.h> 例4.20 判断输入的年份是否为闰年(if语句的嵌套格式)
//int main()
//{
// int year, leap;
// printf("输入年份:");
// scanf_s("%d", &year);
// if (year % 4 == 0)
// {
// if (year % 100 != 0)
// {
// if (year % 400 == 0)
// leap = 1;
// else
// leap = 0;
// }
// else
// leap = 1;
// }
// else
// leap = 0;
// if (leap)
// printf("%d是闰年\n", year);
// else
// printf("%d不是闰年\n", year);
// return 0;
//}
//#include<stdio.h> 例4.20 判断输入的年份是否为闰年(if语句的多分支格式)
//int main()
//{
// int year, leap;
// printf("输入年份:");
// scanf_s("%d",&year);
// if (year % 4 != 0)
// leap = 0;
// else if (year % 100 != 0)
// leap = 1;
// else if (year % 100 != 0)
// leap = 1;
// else if (year % 400 != 0)
// leap = 0;
// else
// leap = 1;
// if (leap)
// printf("%d是闰年\n", year);
// else
// printf("%d不是闰年\n", year);
// return 0;
//}
18
//#include<stdio.h> 例4.21 输入一个三位整数,判断该数是否为升序数
//int main()
//{
// int n, a, b, c;
// printf("输入一个三位整数:");
// scanf_s("%d", &n);
// if (n < 100 || n>999)
// printf("输入错误!\n");
// else
// {
// a = n / 100; /*得到百位数*/
// b = n / 10 % 10; /*得到十位数*/
// c = n % 10; /*得到个位数*/
// if (a < b && b < c)
// printf("&d是升序数\n", n);
// else
// printf("%d不是升序数\n", n);
// }
// return 0;
//}