简易计算器 (C语言)作业

来源:互联网 发布:网络不良信息举报电话 编辑:程序博客网 时间:2024/05/15 23:43

从Github下载

从CSDN下载
////  ViewController.h//  SimpleCalculator////  Created by Mewlan Musajan on 11/2/17.//Copyright (c) 2017 Mewlan Musajan. All Rights reserved.//#include <stdio.h>#include <stdlib.h>#include <string.h>#define V_STR0 "非法指令!%c"#define V_STR1 "请输入两个整数,用空格隔开:"#define V_STR2 "********简易计算器********%c"#define V_STR3 "ADD%s加法%c"#define V_STR4 "SUB%s减法%c"#define V_STR5 "MUL%s乘法%c"#define V_STR6 "DIV%s除法%c"#define V_STR7 "MENU%s显示菜单%c"#define V_STR8 "ETR%s重新输入两个整数%c"#define V_STR9 "EXIT%s退出%c"#define V_STRa "*************************%c"#define V_STRb "请选择指令:"#define V_STRc "执行加法运算, %d + %d = %d%c"#define V_STRd "执行减法运算, %d - %d = %d%c"#define V_STRe "执行乘法运算, %d * %d = %d%c"#define V_STRf "执行除法运算,%d / %d = %0.3f%c"#define V_STRg "iWillook SimpleCalculator [Version 1.0]%c(c) Copyright 2017 iWillook Inc. 保留所有权利。%c%c"#define V_STRk "请输入两个整数:"typedef enum command{add,sub,mul,div_,menu,etr,exit_} CMD;int a, b, c1;float c2;/***ViewModel***/void menuView();void starLine();void cmdInputView();void numInputView();void addView();void subView();void mulView();void div_View();/***ViewController***/void errViewCtrl();void initailViewCtrl();/***Controller***/void numInputCtrl();char * cmdInputCtrl();void addCtrl();void subCtrl();void mulCtrl();void div_Ctrl();void selectFuncCtrl(char *cmd);

////  ViewController.c//  SimpleCalculator////  Created by Mewlan Musajan on 11/2/17.//Copyright (c) 2017 Mewlan Musajan. All Rights reserved.//#include "ViewController.h"/***ViewController***/void initailViewCtrl(){printf(V_STRg, '\n', '\n', '\n');printf(V_STR1);numInputCtrl();printf(V_STR2, '\n');menuView();cmdInputView();selectFuncCtrl(cmdInputCtrl());}void errViewCtrl(){printf(V_STR0, '\n');cmdInputView();selectFuncCtrl(cmdInputCtrl());}/***ViewModel***/void menuView(){printf(V_STR3, "\t\t", '\n');printf(V_STR4, "\t\t", '\n');printf(V_STR5, "\t\t", '\n');printf(V_STR6, "\t\t", '\n');printf(V_STR7, "\t\t", '\n');printf(V_STR8, "\t\t", '\n');printf(V_STR9, "\t\t", '\n');starLine();}void starLine(){printf(V_STRa, '\n');}void cmdInputView(){printf(V_STRb);}void numInputView(){printf(V_STRk);}void addView(){printf(V_STRc, a, b, c1, '\n');}void subView(){printf(V_STRd, a, b, c1, '\n');}void mulView(){printf(V_STRe, a, b, c1, '\n');}void div_View(){printf(V_STRf, a, b, c2, '\n');}/***Controller***/void numInputCtrl(){scanf("%d %d", &a, &b);}void addCtrl(){c1 = a + b;}void subCtrl(){c1 = a - b;}void mulCtrl(){c1 = a * b;}void div_Ctrl(){c2 = a / b;}char * cmdInputCtrl(){char cmd[8];scanf("%s", cmd);return(cmd);}void selectFuncCtrl(char *cmd){CMD _cmd;strupr(cmd);if (strcmp(cmd, "ADD") == 0){_cmd = add;} else if (strcmp(cmd, "SUB") == 0){_cmd = sub;} else if (strcmp(cmd, "MUL") == 0){_cmd = mul;} else if (strcmp(cmd, "DIV") == 0){_cmd = div_;} else if (strcmp(cmd, "MENU") == 0){_cmd = menu;} else if (strcmp(cmd, "ETR") == 0){_cmd = etr;} else if (strcmp(cmd, "EXIT") == 0){_cmd = exit_;} else {errViewCtrl();}switch (_cmd){case add:addCtrl();addView();cmdInputView();selectFuncCtrl(cmdInputCtrl());break;case sub:subCtrl();subView();cmdInputView();selectFuncCtrl(cmdInputCtrl());break;case mul:mulCtrl();mulView();cmdInputView();selectFuncCtrl(cmdInputCtrl());break;case div_:div_Ctrl();div_View();cmdInputView();selectFuncCtrl(cmdInputCtrl());break;case menu:starLine();menuView();cmdInputView();selectFuncCtrl(cmdInputCtrl());break;case etr:numInputView();numInputCtrl();cmdInputView();selectFuncCtrl(cmdInputCtrl());break;case exit_:exit(0);break;default:break;}}
////  main.c//  SimpleCalculator////  Created by Mewlan Musajan on 11/2/17.//Copyright (c) 2017 Mewlan Musajan. All Rights reserved.//#include "ViewController.h"int main(int argc, char const *argv[]){initailViewCtrl();return 0;}



C语言阶段考核一

要求完成个人项目:简易计算器

分值:10分

功能要求

1、  功能菜单的显示

2、  可以不断重复选择不同的指令,直到程序退出为止。

3、  实现两个数的加法,减法,乘法,除法四种运算

4、  可以重新输入新的操作数

5、  如果输入菜单之外的指令,系统提示“非法指令”

6、  功能截图为参考,不一定完全一样,可以进行优化

考核分数和标准:

l  总分10分

l  代码:4分

l  代码解释和提问:6分



原创粉丝点击