编写程序,输入整数,显示其十进制、十六进制和八进制形式。如输入-31,输出:
-31 -1f -37
输入:一个整数,注意,可能是负数。
输出:三个数,十进制、十六进制和八进制,用空格隔开。
提示:设输入的整数为n。(1)使用?:条件运算符求绝对值赋给另一变量。(2)十进制、十六进制和八进制形式,在输出前分别输出dec,hex,oct,如cout<<oct<<m;(3)如果n小于0,先输出一个负号,不换行,再输出整数。
注意,即使你知道了if语句,在这儿也不应该使用。
样例1输入:
-31
样例1输出:
-31 -1f -37
时间限制:500ms内存限制:32000kb
#include <iostream>
#include <cmath>
using namespace std;
int main()
{
int c;
while(1)
{cin>>c;
c>=0?cout<<dec<<c<<" "<<hex<<c<<" "<<oct<<c:cout<<dec<<"-"<<-c<<" "<<"-"<<hex<<-c<<" "<<oct<<"-"<<-c;
return 0;
}
}
主要是对?:条件运算符的运用
表达式为:表达式1?表达式2:表达式3
例如:
max=(a>b)?a:b
语义为如果a>b为真,则把a赋予max,否则把b 赋予max。
相当于
if(a>b)
max=a;
else
max=b;