编写程序,打印三个数中的最大值

32 阅读1分钟

编写程序,打印三个数中的最大值

#include <stdio.h>

// 任务3:打印三个数的最大值
void printFunc(int a, int b, int c) {
    // 先假设a是最大值
    int max = a;
    // 比较b和当前max,更新最大值
    if (b > max) {
        max = b;
    }
    // 比较c和当前max,更新最大值
    if (c > max) {
        max = c;
    }
    // 打印结果
    printf("三个数的最大值是:%d\n", max);
}

// 原有函数(任务1、任务2)
void getSum(int n) {
    int sum = 0;
    for (int i = 1; i <= n; i++) {
        sum += i;
    }
    printf("1到%d的累加和是:%d\n", n, sum);
}

void printFunc(int n) { // 注意:C语言不支持函数重载,这里和任务3的printFunc同名会报错,实际需改名(比如printMulTable)
    if (n < 2 || n > 9) {
        printf("输入错误!请输入2-9之间的整数。\n");
        return;
    }
    printf("===== %d的乘法表 =====\n", n);
    for (int i = 1; i <= n; i++) {
        printf("%d × %d = %d\n", n, i, n * i);
    }
}

// 主函数(测试)
int main() {
    getSum(4);        // 任务1:计算1+2+3+4,输出累加和
    // printFunc(9);   // 任务2:打印9的乘法表(需先修改函数名避免冲突)
    printFunc(2,3,1); // 任务3:输入2、3、1,输出最大值3
    return 0;
}

关键说明:

  1. 函数逻辑printFunc(int a, int b, int c)通过 “假设最大值→依次比较更新” 的方式,找到三个数中的最大值并打印;
  2. 注意点:C 语言不支持函数重载(同名函数参数不同),所以任务 2 的 “打印乘法表” 函数需改名(比如改为printMulTable),否则会编译报错;
  3. 测试效果:调用printFunc(2,3,1)时,会输出 三个数的最大值是:3