weixin_43176170 2018-10-15 04:44 采纳率: 33.3%
浏览 1058

关于switch case语句的一个问题?

#include
#include
using namespace std;
void calccuboid();
void calccylinder();
void calccone();
int main()
{
int choice = -1;
while (choice)
{
cout <<"1.长方体"< cout cout cin >> choice;
switch (choice)
{
case 1:
calccuboid();
break;
case 2:
calccylinder();
break;
case 3:
calccone();
break;
}
}
cout <<"感谢使用本软件!" < }
void calccuboid()
{
double len,width,height;
cout cin >>len>>width>>height;
double v = len*width*height;
cout <<"长方体的体积为:"< }
void calccylinder()
{
double radius,height;
cout cin >>radius>>height;
double v = 3.14*pow(radius,2)*height;
cout <<"圆柱体的体积为:"< }
void calccone()
{
double radius,height;
cout cin >>radius>>height;
double v = 3.14/3*pow(radius,2)*height;
cout <<"圆锥体的体积为:"<<v<<endl;
}
为什么输入0,就会出现cout的感谢使用本软件!语句而输入4,5之类的只会继续循环 。

  • 写回答

1条回答 默认 最新

  • AlbertS 博客专家认证 2018-10-15 06:35
    关注

    因为你的循环while (choice),当choice是0的时候,循环就不能继续,退出前打印“感谢使用本软件!”
    而4、5只是case不执行语句,但是会继续循环

    评论

报告相同问题?

悬赏问题

  • ¥100 Jenkins自动化部署—悬赏100元
  • ¥15 关于#python#的问题:求帮写python代码
  • ¥20 MATLAB画图图形出现上下震荡的线条
  • ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘
  • ¥15 perl MISA分析p3_in脚本出错
  • ¥15 k8s部署jupyterlab,jupyterlab保存不了文件
  • ¥15 ubuntu虚拟机打包apk错误
  • ¥199 rust编程架构设计的方案 有偿
  • ¥15 回答4f系统的像差计算
  • ¥15 java如何提取出pdf里的文字?