即时通讯编写程序将四位八进制数转换为十进制数。我必须使用字符来完成这个程序。 没有炭化线或字符串说我的讲师。有没有人不知道我能做到这一点?这里是我的代码:C++如果语句超过4位数
int main() {
char a = 0;
char b = 0;
char c = 0;
char d = 0;
cout << "Enter 4 digit octal number ";
cin >> a >> b >> c >> d;
if (a - '0' > 7 || b - '0' > 7 || c - '0' > 7 || d - '0' > 7 || !isdigit(a)
|| !isdigit(b) || !isdigit(c) || !isdigit(d)) {
cout << "Bad data";
}
else
cout << "Decimal form of that number: " << ((a - '0') * 512) + ((b - '0')
* 64) + ((c - '0') * 8) + (d - '0') << endl;
return 0;
}
你的代码有什么问题?哪一部分不能按照你的预期工作?你期望什么? – 2011-04-19 11:49:06
你已经完成了。你觉得不清楚/困惑是什么? – NPE 2011-04-19 11:49:54
对不起,我应该更清楚。我必须让它说用户的“坏数据”以超过4个整数输入一个数字。 – 2011-04-19 11:57:05