#include <iostream>
// #include <conio>
using namespace std;
int main(){
int choice;
double temp, result;
std::cout <<"Enter temprature";
std::cin>>temp;
std::cout<<"Enter number between 1 or 2";
std::cin>>choice;
switch (choice){
case 1 :
result = (5*temp /9) - 32;
std::cout<<"answer is" <<result<<"C \n";
break;
case 2 :
result = (9/5*temp) + 32;
std::cout <<"answer" <<result<<"F";
break;
default : std::cout<<"Wrong number";
}
return 0;
}
我使用此代码进行基本转换(切换练习),并出现超时错误。我是cpp的新手,所以如果你觉得这很容易,请不要介意。
另外,我如何在这个程序中使用像getch()这样的conio.h函数? 我正面临这个错误:
Enter temprature
Timeout - Some common reasons for Timeout
Your Program may have a endless loop
答案 0 :(得分:1)
您的代码在MSVS 2015中编译,似乎有效。
此:
result = (5*temp /9) - 32;
不是正确的公式。它应该是
result = 5 * (temp - 32) / 9;
此:
result = (9/5*temp) + 32
;
遭遇整数溢出。它应该是:
result = (9.0 / 5 * temp) + 32;
或
result = (9 * temp / 5) + 32;
如何在此程序中使用像getch()这样的conio.h函数?
conio.h
不是标准标题,getch()
不是标准函数,因此尽管您可以在某些平台上使用它们,但在其他平台上却无法使用它们。
答案 1 :(得分:1)
Stdin Inputs...
的框,然后在第一行写入第一个提示的输入,在第二行写入第二个提示的输入。以下是截图示例:
唯一的问题是每个输出都在同一行,因此您可能希望在代码中添加一些换行符。
作为第二种解决方案,您可以打开交互模式(stdin输入正上方的按钮),这实际上会在运行程序时询问您输入。此解决方案可能更适合您的需求,因为它更有意义。
就conio.h
而言,您将无法使用该标题中的函数(这是好的,因为它们是非标准的),除非您在Windows计算机上本地工作。