我的程序假设提示用户输入数字1-12并输出相应的月份.好的我知道我错过了这个项目的一个非常重要的部分,但是我知道我正在努力弄清楚要使用什么.我是否需要一个包含所有月份名称的字符串?此外,我知道我需要在cout <<"月份"之后放置一些东西.<<必须要去的地方所以答案会打印出来,但我现在还不确定.我也认为我需要有int int = something但不确定它应该是1-12还是monthname.这是我正在编辑的程序,但现在它有一个调试错误,变量"month"正在使用而没有被初始化.那是什么意思?
#include <iostream>
#include <string>
using namespace std;
char chr;
int main()
{
int month;
cout<<"Enter a number from 1-12.";
if (month ==1)
cout<<"January";
else if (month==2)
cout<< "February";
else if (month==3)
cout<<"March";
else if (month==4)
cout<<"April";
else if (month==5)
cout<<"May";
else if (month==6)
cout<<"June";
else if (month==7)
cout<<"July";
else if (month==8)
cout<<"August";
else if (month==9)
cout<<"September";
else if (month==10)
cout<<"October";
else if (month==11)
cout<<"November";
else if (month==12)
cout<<"December";
else if (month>12)
cout<<"Sorry I need a number from 1-12."<<endl;
else if(month<=12)
cout<< "The month is "<<month;
cin>>chr;
return 0;
Run Code Online (Sandbox Code Playgroud)
}
你应该cin>>month;
在if语句之前使用.因为如果您不使用它,键盘的输入将永远不会分配给您的整数.
我还建议使用switch-case,尽可能避免使用if语句.
在您的情况下,字符串数组也适用,但开关盒更方便
您可以查看以下代码.我建议删除break语句然后运行代码或删除默认语句并输入无效的inpu然后运行代码.它将帮助您了解switch-case的工作原理
#include <iostream>
using namespace std;
int main (){
int month;
cout<<"Enter month: ";
cin>>month;
switch(month){
case 1:
cout<<"Jan"<<endl;
break;
case 2:
cout<<"Feb"<<endl;
break;
case 3:
cout<<"Mar"<<endl;
break;
case 4:
cout<<"Apr"<<endl;
break;
case 5:
cout<<"May"<<endl;
break;
case 6:
cout<<"Jun"<<endl;
break;
case 7:
cout<<"Jul"<<endl;
break;
case 8:
cout<<"Aug"<<endl;
break;
case 9:
cout<<"Sep"<<endl;
break;
case 10:
cout<<"Oct"<<endl;
break;
case 11:
cout<<"Nov"<<endl;
break;
case 12:
cout<<"Dec"<<endl;
break;
default: // default is for when you enter a number out of 1-12 range. for instance, 13
cout<<"invalid input!"<<endl;
}
return (0);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
42871 次 |
| 最近记录: |