对于刚学C语言的小白来说,似乎感觉不到C语言可以做些什么事情而感到枯燥,接下来我讲带大家一起来做一个小的C语言程序----计算器

在这个程序中我们使用了switch--case语句,do--while循环,if--else语句,输入,输出函数

1.首先我们定义了两个double型的变量x,y作为计算的两个值

2.然后我们定义了两个int型的变量chose(接收用户输入选择的数字)和isFlag(判断是否要退出程序)

3.使用do--while循环将计算机的提示菜单,及功能放进去,使用户可以反复使用计算器

4.在do--while循环里我们先打印用户可见的菜单选择包含加法计算器,减法计数器,乘法计算器,除法计算器,并计算器(程序)的退出功能

     printf("*****************计算器*****************\n");printf("**************1.加法计算****************\n");printf("**************2.减法计算****************\n");printf("**************3.乘法计算****************\n");printf("**************4.除法计算****************\n");printf("***************5.退出********************\n");printf("*************请选择(1~~5)***************\n");

5.使用scanf函数获取用户在键盘上输入的数字

scanf("%d",&chose);

6.对用户从键盘输入的值进行操作,首先使用if--else语句判断用户从键盘输入的数字是否合理,若不合理,则提示用户重新输入数字,若输入的数字合理则进入switch--case语句进行对于输入数字相应的操作,大概框架如下

if(chose > 5 || chose < 1){printf("非法输入、请重新输入(1~~5)\n");}else{switch(chose){ case 1:case 2:case 3:case 4:case 5:}}

7.设置do--while循环的循环条件为(isFlag),并对每个case中的内容功能进行添加                               这里我们case 1:为例,分别使用printf和scanf提示并获取用户输入需要进行计算的两个值x,y     并将两个数相加的值输出出来,并使用break退出switch--case语句

case 1:printf("请输入x:");scanf("%lf",&x);printf("请输入y:");scanf("%lf",&y);printf("x + y = %f\n",x+y);break;

8.对用户退出计算器的功能进行添加,将退出功能的case 5:进行添加,若进入case 5:则将0赋值给isFlag,再使用break退出switch--case语句,并设置do--while循环的循环条件为isFlag。所以若程序进入了case 5:,isFlag的值将从1变成0。即可退出循环,即完成程序退出功能的实现。

case 5:isFlag = 0;break;

以上即可完成计算器的大部分框架,计算器实现具体的代码如下:

#include<stdio.h>
int main()
{double x,y;int chose,isFlag=1;do{printf("*****************计算器*****************\n");printf("**************1.加法计算****************\n");printf("**************2.减法计算****************\n");printf("**************3.乘法计算****************\n");printf("**************4.除法计算****************\n");printf("***************5.退出********************\n");printf("*************请选择(1~~5)***************\n");scanf("%d",&chose);if(chose > 5 || chose < 1){printf("非法输入、请重新输入(1~~5)\n");}else{switch(chose){  case 1:printf("请输入x:");scanf("%lf",&x);printf("请输入y:");scanf("%lf",&y);printf("x + y = %f\n",x+y);break;case 2:printf("请输入x:");scanf("%lf",&x);printf("请输入y:");scanf("%lf",&y);printf("x - y = %f\n",x-y);break;case 3:printf("请输入x:");scanf("%lf",&x);printf("请输入y:");scanf("%lf",&y);printf("x * y = %f\n",x*y);break;case 4:printf("请输入x:");scanf("%lf",&x);printf("请输入y:");scanf("%lf",&y);printf("x / y = %f\n",x/y);    break;case 5:isFlag = 0;break;}}}while(isFlag);printf("程序已退出哦~~~");return 0;
}

看到这里啦,如果觉得有帮助的话麻烦帮忙点个赞哦,能三连当然对好不过啦~~

自制计算器(C语言的简单实现)(可多次使用)相关推荐

  1. c语言中的16进制坐标计算器,C语言实现简单计算器(VC6.0环境)

    C语言版简易计算器,包含几个小功能,而且比较精简,适合新手了解整合框架结构 源代码如下: #include #include #include //预处理指令 int main(void) { dou ...

  2. c语言设计简单计算器,c语言设计简单计算器实现加减乘除运算

    编写程序的目的就是使程序有他应用的地方,编写一个简单的计算器来实现我们计算的目的. 利用swich  case 语句和循环结构来实现简单程序的编写.利用选择语句来进行输入的选择,然后利用所输入的数字的 ...

  3. c程序语言编写 计算器,C语言编写简单计算器

    主函数 main() { int result;  /*运算的结果*/ printf("*****************************************\n"); ...

  4. html语言制作简单计算器,HTML自制计算器

    1 2 3 4 5 自制计算器 6 7 8 9 10 $(function(){11 var$btn=$("#calc")12 //取消已绑定的事件: 13 $btn.off('c ...

  5. PTA 基础编程题目集 7-12 两个数的简单计算器 C语言

    PTA 基础编程题目集 7-12 两个数的简单计算器 C语言 本题要求编写一个简单计算器程序,可根据输入的运算符,对2个整数进行加.减.乘.除或求余运算.题目保证输入和输出均不超过整型范围. 输入格式 ...

  6. C语言实现简单计算器

    C语言实现简单计算器 一.背景 二.代码 1.数据结构 2.弟弟行为的编程 三.基本逻辑 中缀转后缀 (1)为什么要转 (2)怎么转 (3)注意事项 四.演示图片 一.背景 自己希望通过这个处女帖,来 ...

  7. C语言练手项目--C 语言制作简单计算器

    C 语言制作简单计算器 一.需求 二.实现 1.思路 2.代码 3.运行结果 三.参考链接 一.需求 使用 C 语言做一个简单的计算器,能执行加.减.乘.除操作 二.实现 1.思路 (1)标准输入到s ...

  8. c语言计算器取百分数,c语言计算器程序设计包含加减乘除简单的函数运算

    c语言计算器程序设计包含加减乘除简单的函数运算 c语言计算器程序设计包含加减乘除简单的函数运算 人气:258 ℃时间:2020-03-28 13:19:41 优质解答 实用计算器之程序设计 [摘 要] ...

  9. C语言实现简单计算器程序

    简单计算器程序 编写一个简单计算器程序,输入格式为:data1 op data2.其中data1和data2是参加运算的两个数,op为运算符,它的取值只能是+.-.*./..要求必须使用switch- ...

  10. 实用c语言函数源码,C语言编写简单朗读小工具(有源码)

    原标题:C语言编写简单朗读小工具(有源码) 最近不少人在后台留言说学C都是面对枯燥的控制台程序,能不能体现一下C语言的实际用途,今天我们就理论结合实践一把:C语言结合VBS脚本编写一个简单的朗读小工具 ...

最新文章

  1. NYOJ 353 3D dungeon 【bfs】
  2. android 的listactivity
  3. 《编程小白的第一本python入门书》笔记 二
  4. Qt界面的个性设置-QSS
  5. agc015F - Kenus the Ancient Greek(结论题)
  6. 批处理写入以及动态与参数化SQL,数据库的性能如何?
  7. 计算属性computed的使用
  8. NoSql理解+传统关系型数据库ACID+Nosql的CAP+BASE的理解
  9. LeetCode 971. 翻转二叉树以匹配先序遍历(DFS)
  10. C# EntityFramework连接MySQL (DbFirst)
  11. MATLAB函数fir1
  12. java自带的tree,最强最全的Tree命令详解
  13. Linux安装RDKit
  14. 感觉中国程序员前景一片灰暗,是这样吗?Android开发工程师为你答疑解惑
  15. 概念数据模型到逻辑数据模型的转化
  16. 几道加油站加油相关问题:最小加油次数、能否回到起点
  17. 「Prompt」是什么,并用简单的范例让你了解如何善用他、避开陷阱,以此获得更好的 ChatGPT 回复。
  18. win10双 cd linux,win10系统将CdLinux装入硬盘的还原方案
  19. Ajax--概述、xhr对象的常用属性和方法、xhr的常用事件、xhr对象发送POST请求、xhr对象发送GET请求、xhr对象的兼容性问题、数据交换格式(XML、JSON)
  20. 2018 AFCTF 可怜的RSA

热门文章

  1. 浅谈Cglib、Jdk以及ProxyFactory实现动态代理上的区别
  2. 调用sap函数接口_部署在SAP云平台CloudFoundry环境的应用如何消费SAP Leonardo机器学习API...
  3. python 修改文件名 修改日期_python实现批量修改文件名
  4. 创设Excel服务失败
  5. 仿微信源代码android,android 最新版超高仿微信源码。
  6. 【车牌识别】基于matlab GUI模板匹配车牌库识别【含Matlab源码 416期】
  7. 一步步写 CMOS 驱动模块 ELDD 学习笔记
  8. c语言编译器环境,C语言教程:C环境设置
  9. Winform中使用signalr
  10. Amlogic Linux系列(三) 视频解码分析