1.3 例子
源码
c
#include <stdio.h> // 引入标准输入输出库头文件,使得printf和scanf等函数可以使用
int main() { // 主函数入口,程序从这里开始执行
int a, b, c; // 定义三个整型变量a, b和c
int max(int x, int y); // 声明max函数,该函数接受两个整数参数,返回它们中的最大值
scanf("%d,%d", &a, &b); // 从标准输入读取两个整数,并分别赋值给变量a和b
c = max(a, b); // 调用max函数计算a和b的最大值,并将结果赋值给变量c
printf("max=%d\n", c); // 打印变量c的值,即a和b的最大值
return 0; // 返回0,表示程序成功执行完毕
} // 主函数结束
int max(int x, int y) { // 定义max函数,用于计算两个整数的最大值
int z; // 定义局部变量z,用于存储最大值
if (x > y) { // 如果x大于y
z = x; // 将x的值赋给z
} else { // 否则
z = y; // 将y的值赋给z
}
return z; // 返回最大值z
}
解释
这个程序展示了如何使用函数来计算两个整数中的最大值,并介绍了从标准输入读取值的方法。下面是对每部分的详细介绍:
#include <stdio.h>
- 这行代码通过引入标准输入输出库,使得程序可以使用
printf
和scanf
等函数来进行输入和输出操作。
- 这行代码通过引入标准输入输出库,使得程序可以使用
int main() {
- 程序的主入口点,
main()
函数的开始。
- 程序的主入口点,
int a, b, c;
- 定义了三个整型变量
a
、b
和c
,用于存储输入的值和计算结果。
- 定义了三个整型变量
int max(int x, int y);
- 声明了
max
函数,它接受两个整数参数并返回其中的最大值。这是函数原型的声明,告诉编译器函数的存在,实际定义在main
函数之后。
- 声明了
scanf("%d,%d", &a, &b);
- 使用
scanf
函数从标准输入读取两个整数。用户需要按照数字,数字
的格式输入(例如3,4
),并且这两个值分别被赋予变量a
和b
。
- 使用
c = max(a, b);
- 调用
max
函数,并将a
和b
作为参数传递,函数返回的最大值赋给变量c
。
- 调用
printf("max=%d\n", c);
- 打印出
c
的值,即a
和b
中的最大值,后跟一个换行符。
- 打印出
return 0;
main()
函数的结束,返回0
表示程序成功执行。
int max(int x, int y) {
max
函数的定义开始,此函数用于找出两个整数中的最大值。
int z;
- 在函数内部定义了一个局部变量
z
,用于存储最大值。
- 在函数内部定义了一个局部变量
if (x > y) { ... } else { ... }
- 一个条件语句,用于比较
x
和y
的值。如果x
大于y
,则z
被赋值为x
;否则,z
被赋值为y
。
- 一个条件语句,用于比较
return z;
- 函数返回最大值
z
。
- 函数返回最大值
这个程序较之前的例子更加复杂,
展示了函数声明与定义、条件语句、以及如何从用户处获取输入的基本方法。这为初学者提供了一个更深入了解C语言编程的机会。