3

如何在不使用库的情况下切断数字的前导数字以便仅显示最后两位数字。例如:

1923 年至 23 日

2001 至 01

1234 至 34

123 至 23

只有

#include <iomanip>
#include <iostream>

谢谢!

4

2 回答 2

8

如果您只是使用整数,我建议您只做 mod %100 为简单起见:

int num =2341;

cout << num%100;

将显示 41。

如果您需要前导零,请执行以下操作:

std::cout << std::setw(2) << std::setfill('0') << num%100 << std::endl;
于 2010-09-22T02:46:36.483 回答
6

如果您的数字是 int 形式(而不是字符串形式),您应该考虑使用模运算符

如果数字是 char[] 形式,则有一个简单的解决方案涉及对字符串进行索引,例如:

char *myString = "ABCDE";
int lengthOfMyString = 5;
cout << myString[lengthOfMyString - 3]
     << myString[lengthOfMyString - 5]
     << myString[lengthOfMyString - 4];
//outputs the word CAB
于 2010-09-22T02:18:40.757 回答