输入一个表示整数的字符串,把该字符串转换成整数并输出。例如输入字符串"345",则输出整数345
题目:输入一个表示整数的字符串,把该字符串转换成整数并输出。例如输入字符串"345",则输出整数345。
1:判断是否为空字符串
2:判断正负号
3:判断是否有非法输入
最后将出来的数字不断乘以10再加上后面数字不断循环下去
#include "stdafx.h" #include<iostream> #include<string> using namespace std; enum flag{ valid=0, invalid }; int judge=valid; int paraInt(string s){ long num=0; int f=1; if(s.empty()) judge=invalid;//pan duan shi fou wei kong zi fu chuan else{ string::size_type i=0; if(s[0]=="+") { i=1; if(s.length()==1) judge=invalid; } if(s[0]=="-") { i=1; f=-1; if(s.length()==1) judge=invalid; } for(i;i<s.length();i++){ //zhuan huan int temp=s[i]-"0"; if(temp>=0&&temp<=9) num=num*10+temp; else{ judge=invalid; break; } } } num*=f; return static_cast<int>(num); } int _tmain() { string s; cin>>s; int num=paraInt(s); if(!judge) cout<<num<<endl; else cout<<"invalid input"<<endl; system("pause"); return 0; }
声明:该文观点仅代表作者本人,入门客AI创业平台信息发布平台仅提供信息存储空间服务,如有疑问请联系rumenke@qq.com。
- 上一篇:没有了
- 下一篇:没有了