c语言简易计算器大作业报告,简易计算器 (C语言)作业
发布日期:2021-09-12 18:41:43 浏览次数:33 分类:技术文章

本文共 4118 字,大约阅读时间需要 13 分钟。

从Github下载

从CSDN下载

//

// ViewController.h

// SimpleCalculator

//

// Created by Mewlan Musajan on 11/2/17.

//Copyright (c) 2017 Mewlan Musajan. All Rights reserved.

//

#include #include #include #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分

916f0747c8ffe406bd8da93465ef6c74.png

转载地址:https://blog.csdn.net/weixin_39610594/article/details/116977597 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:c语言删除字符串的空格函数,C语言去除空白字符trim函数的高效实现
下一篇:linux安装was找不到浏览器,linux安装was 运行launchpad.sh 打不开浏览器

发表评论

最新留言

表示我来过!
[***.240.166.169]2024年04月05日 11时40分22秒