文章

14

粉丝

58

获赞

5

访问

9.7k

头像
进制转换2 题解:遍历str,sum = sum * 16 + str[i] - '0'或sum * 16 + str[i] - 'A' + 10,sum必须放在内循环,每次重置
P1259 北京大学机试题
发布于2024年3月15日 19:39
阅读数 705

#include <bits/stdc++.h>
using namespace std;

int main(){
	int sum = 0;   //十进制
	string str;
	
	while( cin >> str ){
		int sum = 0;   //十进制,必须放在内循环里,每次重置
	    for( int i=2; i < str.size(); i++ ){
	        if( str[i] >= '0' && str[i] <= '9' )
			    sum = sum * 16 + str[i] - '0';
		    else
			    sum = sum * 16 + str[i] - 'A' + 10;
	    }
	    cout << sum << endl;
	}
	
    return 0;
}

 

登录查看完整内容


登录后发布评论

暂无评论,来抢沙发