微软等数据结构与算法面试100题 第二十题

来源:互联网 发布:淘宝装修的图片哪里找 编辑:程序博客网 时间:2024/04/28 23:31

第二十题

题目:

输入一个表示整数的字符串,把该字符串转换成整数并输出。


分析:这道题主要要考虑全面即可,比如“-213”,“+234”,“-pox”,“123”

分别输出为-213, 234,错误,123


代码:

#include<iostream>using namespace std;int char2int(char *b, int length){int startIndex = 0;int PosiNeg;if(b[0]=='-'){startIndex = 1;PosiNeg = -1;}else if(b[0]=='+'){startIndex = 1;PosiNeg = 1;}int value = 0;for(int i=startIndex; i<length;i++){if(b[i]<='9'&&b[i]>='0')value = (b[i]-'0')+value*10;else{cout<<"wrong format";return -1;}}return value*PosiNeg;}int main(){char* b = "-13423";cout<<char2int(b,strlen(b));return 0;}