题目

简单菜单:循环选择多项功能直到退出

思路

本题实现简单菜单驱动程序:反复显示菜单,根据选项调用不同功能,选 0 退出。

外层 while(1) 打印菜单并读选项,switch 分发到各函数;非法选项提示重选;case 0 退出程序。各功能拆成独立函数便于维护。

解题分析

菜单循环:打印选项、读 choice、switch 分发、0 退出。把每个功能写成函数,main 只留循环,后面加菜单项更容易。

完整程序

#include <stdio.h>

int main(void)
{
    for (;;) {
        int op;
        printf("1 add 2 mul 0 exit\n");
        if (scanf("%d", &op) != 1) {
            break;
        }
        if (op == 0) {
            break;
        }
        int a, b;
        scanf("%d %d", &a, &b);
        if (op == 1) {
            printf("%d\n", a + b);
        } else if (op == 2) {
            printf("%d\n", a * b);
        }
    }
    return 0;
}

运行示例

输入:

1
3 4
0

输出:

1 add 2 mul 0 exit
7