zoukankan      html  css  js  c++  java
  • 简单加减乘除

    #include <stdio.h>
    #include <string.h>
    
    char get_choice(void);
    char get_first(void);
    float get_float(void);
    void add(void);
    void subtract(void);
    void multiply(void);
    void divide(void);
    
    int main(void)
    {
       int choice;
    
       while((choice=get_choice())!='q')
       {
          switch (choice)
          {
          case 'a':
             add();
             break;
          case 'b':
             subtract();
             break;
          case 'c':
             multiply();
             break;
          case 'd':
             divide();
             break;
          case 'q':
             break;
          }
       }
       return 0;
    }
    
    char get_choice(void)
    {
       int ch;
    
       printf("input the letter of your choice:
    ");
       printf("a. add
    b. subtract
    c. multiply
    d. divide
    q. quit
    ");
       ch = get_first();
       while((ch<'a' || ch>'d') && ch!='q')
       {
          printf("please respond with a,b,c,d,q:");
          ch = get_first();
       }
    
       return ch;
    }
    
    char get_first(void)
    {
       int ch;
    
       ch = getchar();
       while(getchar()!='
    ')
          continue;
    
       return ch;
    }
    
    float get_float(void)
    {
       float input;
       char ch;
    
       while(scanf("%f",&input) != 1)
       {
          while((ch=getchar()) != '
    ')
             putchar(ch);
          printf("is not a float number.
    ");
          printf("please input a float number,such as 1.1, 2.5:");
       }
       return input;
    }
    
    void add(void)
    {
       float f_num,s_num;
    
        printf("input first number:");
        f_num = get_float();
        printf("input second number:");
        s_num = get_float();
        printf("%f + %f = %f
    ",f_num,s_num,f_num+s_num);
    }
    
    void subtract(void)
    {
       float f_num,s_num;
    
        printf("input first number:");
        f_num = get_float();
        printf("input second number:");
        s_num = get_float();
        printf("%f - %f = %f
    ",f_num,s_num,f_num-s_num);
    }
    
    void multiply(void)
    {
       float f_num,s_num;
    
        printf("input first number:");
        f_num = get_float();
        printf("input second number:");
        s_num = get_float();
        printf("%f * %f = %f
    ",f_num,s_num,f_num*s_num);
    }
    
    void divide(void)
    {
       float f_num,s_num;
    
        printf("input first number:");
        f_num = get_float();
        printf("input second number:");
        s_num = get_float();
       if(s_num == 0)
       {
          printf("input a number other than 0:");
          s_num = get_float();
       }
        printf("%f / %f = %f
    ",f_num,s_num,f_num/s_num);
    }
  • 相关阅读:
    012_DRC检查与处理
    深度系统20.3中亿图图示任务栏名称显示乱码
    deepin20.3+nvidia460.27+cuda11.2+cudnn8.1.1+anconda3.2021.11+paddle2.1.2
    C++中使用DOM写XML文档
    理解lvalue和rvalue
    C++/CLI与C#常用语法对比
    VC++ MSXML创建XML文件以及对XML文档解析
    Stack overflow 编译能通过,运行时出现Stack overflow
    于typedef的用法总结
    VC2008操作Excel2007总结
  • 原文地址:https://www.cnblogs.com/cokefentas/p/12283349.html
Copyright © 2011-2022 走看看