回覆列表
  • 1 # 唯C翹遍

    #include "stdafx.h"

    #include <stdio.h>

    #define SELECT_OPTION_2 2

    #define SELECT_OPTION_3 3

    #define SELECT_OPTION_QUIT 0

    #define buffer_len 6

    #define YES 0

    #define NO -1

    void printf_input();

    void print_info();

    void print_error();

    int maxoftwo(int a, int b);

    int maxofthree(int a, int b, int c);

    int is_valid(const char *buf);

    void print_info()

    {

    printf("[2]求兩個數的最大值\n");

    printf("[3]求三個數的最大值\n");

    printf("[0]退出\n\n");

    }

    void printf_input()

    {

    printf("請輸入你的選擇2/3/0: ");

    }

    void print_error()

    {

    printf("輸入錯誤請重新輸入\n");

    //print_info();

    }

    int maxoftwo(int a, int b)

    {

    return a > b ? a :b;

    }

    int maxofthree(int a, int b, int c)

    {

    return maxoftwo(a, b) > c ? maxoftwo(a, b) : c;

    }

    int is_valid(const char *buf)

    {

    int i;

    char s[7];

    for(i=0; i <= buffer_len; i++)

    {

    if (!(buf[i] >="0" && buf[i] <= "9"))

    { break; }

    }

    //__int64 value = //應判斷 int 的最大最小值是否超出範圍

    return i == buffer_len ? YES : NO;

    }

    int main(int argc, char* argv[])

    {

    int select=0;

    int first, second, third;

    char buf[7];

    print_info();

    do

    {

    printf_input(); scanf("%s",buf);

    if(is_valid(buf) == YES)

    {

    switch( select )

    {

    /* 每次輸入都應該使用is_valid檢查合法性,這裡簡單處理沒有檢查 */case SELECT_OPTION_2:

    printf("請輸入第一個數:");

    scanf("%d",&first);

    printf("請輸入第二個數:");

    scanf("%d",&second);

    printf("最大數為:%d\n",maxoftwo(first, second));

    break;

    case SELECT_OPTION_3:

    printf("請輸入第一個數:");

    scanf("%d",&first); printf("請輸入第二個數:");

    scanf("%d",&second); printf("請輸入第三個數:");

    scanf("%d",&third);

    printf("最大數為:%d\n",maxofthree(first, second, third));

    break;

    case SELECT_OPTION_QUIT:

    printf("你已經退出程式\n");

    break;

    default: print_error();

    }

    } else {

    print_error();

    }

    }while(select != 0);

    return 0;

    }

  • 中秋節和大豐收的關聯?
  • 有什類似於大魚海棠的電影?