首页 > 其他 > 详细

A题笔记(10)

时间:2014-02-18 11:06:52      阅读:297      评论:0      收藏:0      [点我收藏+]

No.1390 代码:https://code.csdn.net/snippets/191965  另一版本:https://code.csdn.net/snippets/192009

考察点有两个:①将一个数转换为指定进制的数  ②判断是否为回文数

 

vector<char> num;
num.insert(num.begin(), j);

向 vector 的指定位置插入元素,对于 vector 它不像 list 和 deque 可以调用 num.push_front(j) 来向队列最前端插入元素,因而只能使用 num.insert()。

 

对于10进制以上的进制,当某一位的数字大于等于10之后,就需要将其转换成 ‘A’ ‘B’ ‘C’.......来表示。

        if(i<10)
            j=(char)(i+48);
        else
            j=(char)(i+55);

实现原理是将数字通过加法变成 ASCII 中的对应的编号,然后再转换成字符。

 

vector 类型无法直接输出,不妨将他转化成 string 型。

bubuko.com,布布扣
string vectorTostring(vector<char> num)
{
    vector<char>::iterator a;
    string s;
    for(a=num.begin(); a<num.end(); a++)
        s+=*a;

    return s;
}
bubuko.com,布布扣

A题笔记(10)

原文:http://www.cnblogs.com/LeoGodfrey/p/3553275.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!