文章目录
- 一、计算一元一次函数的值
-
- [1. 一元一次函数的计算方法](#1. 一元一次函数的计算方法)
- [1.1.1方法一:使用 if 语句实现](#1.1.1方法一:使用 if 语句实现)
- [1.1.2方法二:使用 switch 语句实现](#1.1.2方法二:使用 switch 语句实现)
- 二、成绩等级判定程序
- 三、找出三个数中的最大值
-
- [1. 比较并确定最大值](#1. 比较并确定最大值)
一、计算一元一次函数的值
1. 一元一次函数的计算方法
1.有一个函数:
y=x (x<1)
y=2x-1 (1<=x<10)
y =3x-11 (x>=10)
编写程序,输入 xx 的值,输出对应的 yy 值。例如,如果 x=−1x=−1,则输出结果为 f(−1)=−1f(−1)=−1。
1.1.1方法一:使用 if 语句实现
c
#include <stdio.h>
int main() {
int x, y;
scanf_s("%d", &x);
if (x < 1) {
y = x;
printf("f(%d)=%d", x, y);
} else if (1 <= x && x < 10) {
y = 2 * x - 1;
printf("f(%d)=%d", x, y);
} else {
y = 3 * x - 11;
}
return 0;
}
1.1.2方法二:使用 switch 语句实现
c
#include <stdio.h>
int main() {
int x;
scanf_s("%d", &x);
switch (x > 1) {
case 1:
if (x < 10) printf("f(%d)=%d", x, 2 * 2 - 1);
else printf("f(%d)=%d", x, 3 * x - 11);
break;
case 0:
printf("f(%d)=%d", x, x);
break;
}
return 0;
}
这两种方法都可以有效地根据输入的 xx 值计算出对应的 yy 值,并输出结果。第一种方法使用 if-else 结构,逻辑清晰,易于理解。第二种方法尝试使用 switch 语句,但需要注意 switch 语句的条件表达式和 break 语句的使用,以避免逻辑错误。
二、成绩等级判定程序
程序功能: 该程序用于根据用户输入的分数,判定并输出相应的成绩等级。
输入:用户输入的分数(整数)。
输出:根据分数判定的成绩等级。
c
#include <stdio.h>
int main() {
int score;
printf("请输入分数: ");
scanf_s("%d", &score);
switch (score / 10) {
case 10:
case 9:
printf("成绩等级: 优\n");
break;
case 8:
printf("成绩等级: 良\n");
break;
case 7:
printf("成绩等级: 中\n");
break;
case 6:
printf("成绩等级: 及格\n");
break;
default:
printf("成绩等级: 差\n");
break;
}
return 0;
}
三、找出三个数中的最大值
1. 比较并确定最大值
程序功能:
该程序用于找出用户输入的三个整数中的最大值。
输入:用户输入的三个整数。
输出:三个数中的最大值。
c
#include <stdio.h>
int main() {
int a, b, c,max_ab;
printf("请输入三个数:\n");
scanf_s("%d %d %d", &a, &b, &c); // 获取三个整数输入
switch (a > b) {
case 1:
max_ab = a;
break;
case 0:
max_ab = b;
break;
}
switch (max_ab > c) {
case 1:
printf("最大值是:%d\n", max_ab);
break;
case 0:
printf("最大值是:%d\n", c);
break;
}
return 0;
}
说明:
程序首先提示用户输入三个整数。
第一个 switch 语句比较前两个数 a 和 b,并将较大的数赋值给 max_ab。
第二个 switch 语句将 max_ab 与第三个数 c 进行比较,确定并输出三个数中的最大值。
这种方法通过两次比较,有效地找出了三个数中的最大值,并将其输出。