如果有人愿意帮助,将不胜感激,这意味着很多!
所以我一直在努力完成这个看似简单的代码任务。
此程序涉及命令提示符。
对于没有传递命令行参数的情况,必须显示我的名字“ James”。
如果有2个参数,则必须添加两个参数。
如果有3,则必须执行第3个参数,(a用于将第一个数字加2,m用于相乘,依此类推)。
如果人们可以修复我的代码,那么我将不胜感激。
由于有点尴尬,我将不做准备。但这将意味着您需要帮助的话。 <3。
#include "stdafx.h"
#include <iostream>
using namespace std;
int main(int argc, char *argv[])
{
int firstNumber = atoi(argv[1]);
int secondNumber = atoi(argv[2]);
char inputoperator = argv[2][0]);
switch (inputoperator)
{
case'a':
{
cout << firstNumber + secondNumber << endl;
break;
}
case 's':
{
cout << firstNumber - secondNumber << endl;
break;
}
case 'm':
{
cout << firstNumber * secondNumber << endl;
break;
}
case 'd':
{
cout << firstNumber / secondNumber << endl;
break;
}
}
}
答案 0 :(得分:2)
IList
您可能想使用atoi的替代方法,因为它对所有不适合int的事物都具有不确定的行为
答案 1 :(得分:1)
我不认为他想要一个复杂的解决方案...
我不确定是否可以正常使用功能。
#include <iostream>
using namespace std;
int main(int argc, char *argv[])
{
if(argc < 3)
{
cout<<"Your name" <<endl;
return 0;
}
int firstNumber = atoi(argv[1]);
int secondNumber = atoi(argv[2]);
char inputoperator = 'a';
if(argc == 4)
{
inputoperator = argv[3][0];
}
switch (inputoperator)
{
case'a':
{
cout << firstNumber + secondNumber << endl;
break;
}
case 's':
{
cout << firstNumber - secondNumber << endl;
break;
}
case 'm':
{
cout << firstNumber * secondNumber << endl;
break;
}
case 'd':
{
cout << firstNumber / secondNumber << endl;
break;
}
}
}