2057 A + B Again

    xiaoxiao2026-04-14  5

    C++提供十六进制加法

    头文件:#include <iomanip> 说明:是I/O流控制头文件,就像C里面的格式化输出一样

             控   制   符                            作           用                                      dec  设置整数为十进制 hex 设置整数为十六进制 oct 设置整数为八进制 setbase(n) 设置整数为n进制(n=8,10,16) setfill(n)

     设置字符填充,c可以是字符常或符变量

     setprecision(n) 设置浮点数的有效数字为n位 setw(n) 设置字段宽度为n位 setiosflags(ios::fixed) 设置浮点数以固定的小数位数显示 setiosflags(ios::scientific)   设置浮点数以科学计数法表示 setiosflags(ios::left) 输出左对齐 setiosflags(ios::right) 输出右对齐 setiosflags(ios::skipws) 忽略前导空格 setiosflags(ios::uppercase) 在以科学计数法输出E与十六进制输出X以大写输出,否则小写。 setiosflags(ios::showpos) 输出正数时显示"+"号 setiosflags(ios::showpoint) 强制显示小数点 resetiosflags() 

     终止已经设置的输出格式状态,在括号中应指定内容

    hex的输出中字母默认为小写,需要加上uppercase

    十六进制负数在计算机里表示为补码形式,要显示出带正负号的十六进制形式来就要对其取反加负号,-sum即可。

    #include<iostream> using namespace std; int main() { long long m, n, sum;//用int会WA while (cin >> hex >> m >> n) { sum = m + n; if (sum < 0) { cout << '-'; sum = -sum; } cout << hex <<uppercase<<sum<< endl; } return 0; }
    转载请注明原文地址: https://ju.6miu.com/read-1308839.html
    最新回复(0)