c语言中的fun函数通常是用户自定义的函数名称,常用于各类编程练习和考试题目中,用来实现特定的功能逻辑。通过不同的fun函数例题,可以逐步掌握函数的定义、参数传递、返回值处理以及各类语法特性的应用。

基础例题:计算两个数的和
需求:定义一个fun函数,接收两个整数参数,返回这两个数的和,在主函数中调用该函数并输出结果。
#include <stdio.h>
// 定义fun函数,计算两个整数的和
int fun(int a, int b) {
return a + b;
}
int main() {
int num1 = 3, num2 = 5;
int result = fun(num1, num2);
printf("两个数的和为:%dn", result);
return 0;
}
运行结果会输出两个数的和为:8,这个例题主要考察fun函数的基本定义和调用方式,以及参数的传递逻辑。
进阶例题:判断素数
需求:定义fun函数,接收一个整数参数,判断该数是否为素数,是素数返回1,不是返回0,主函数中输入一个数并调用函数输出判断结果。
#include <stdio.h>
#include <math.h>
// 定义fun函数判断素数
int fun(int n) {
if (n <= 1) {
return 0;
}
int limit = (int)sqrt(n);
for (int i = 2; i <= limit; i++) {
if (n % i == 0) {
return 0;
}
}
return 1;
}
int main() {
int num;
printf("请输入一个整数:");
scanf("%d", &num);
if (fun(num)) {
printf("%d是素数n", num);
} else {
printf("%d不是素数n", num);
}
return 0;
}
这个例题考察了fun函数中逻辑判断语句的使用,以及数学库函数的调用,同时涉及参数和返回值的配合逻辑。
递归例题:计算阶乘
需求:定义fun函数,用递归的方式计算一个非负整数的阶乘,主函数中输入整数并调用函数输出结果。
#include <stdio.h>
// 定义递归fun函数计算阶乘
long long fun(int n) {
if (n == 0 || n == 1) {
return 1;
}
return n * fun(n - 1);
}
int main() {
int num;
printf("请输入一个非负整数:");
scanf("%d", &num);
if (num < 0) {
printf("输入错误,请输入非负整数n");
} else {
printf("%d的阶乘为:%lldn", num, fun(num));
}
return 0;
}
该例题重点考察fun函数的递归调用逻辑,理解递归的终止条件和递推过程,同时需要注意阶乘结果的数值范围,避免溢出。
数组相关例题:求数组最大值
需求:定义fun函数,接收一个整型数组和数组长度,返回数组中的最大值,主函数中定义数组并调用函数输出结果。
#include <stdio.h>
// 定义fun函数求数组最大值
int fun(int arr[], int len) {
int max = arr[0];
for (int i = 1; i < len; i++) {
if (arr[i] > max) {
max = arr[i];
}
}
return max;
}
int main() {
int arr[] = {12, 45, 7, 89, 33};
int len = sizeof(arr) / sizeof(arr[0]);
int max_val = fun(arr, len);
printf("数组中的最大值为:%dn", max_val);
return 0;
}
这个例题考察fun函数对数组参数的处理,理解数组作为函数参数时的传递方式,以及数组长度的计算逻辑。