文章

27

粉丝

86

获赞

10

访问

29.6k

头像
IP地址 题解:
P1023 贵州大学机试题
发布于2023年8月17日 13:46
阅读数 1.4k

C++

注意:例如127.0.0.1,输出是0x7F000001。十进制转十六进制时注意0

注意:例如127..0.1,输出为Error。不要只判断3个'.','.'之间不能连着

#include <iostream>
#include <vector>
#include <algorithm>
#include <string>
using namespace std;
bool isDigit(string str){
	for(int i = 0; i < str.size(); i++){
		if(str[i] < '0' || str[i] > '9'){
			return false;
		}
	}
	return true;
}
bool isRight(int num){
	if(num >= 0 && num <= 255){
		return true;
	}
	else{
		return false;
	}
}
vector<char> dec2hex(int num){
	vector<char> hex;
	int number;
	char ch;
	if(num == 0){
		hex.push_back('0');
		hex.push_back('0');
	}
	while(num > 0){
		number = num % 16;
		if(number > 10){
			ch = 'A' + number % 16 - 10;
		}
		else{
			ch = '0' + number % 16;
		}
		hex.push_back(ch);
		num /= 16;
	}
	if(hex.size() == 1){
		hex.push_back('0');
	}
	reverse(hex.begin(), hex.end());
	return hex;
}
int main(){
	string str;
	strin...
登录查看完整内容


登录后发布评论

暂无评论,来抢沙发