1508字符串转换成整数
来源:互联网 发布:微信公众号开发java 编辑:程序博客网 时间:2024/06/04 18:00
- 题目描述:
将一个字符串转换成一个整数,要求不能使用字符串转换整数的库函数。
- 输入:
输入可能包含多个测试样例。
对于每个测试案例,输入为一个合法或者非法的字符串,代表一个整数n(1<= n<=10000000)。
- 输出:
对应每个测试案例,
若输入为一个合法的字符串(即代表一个整数),则输出这个整数。
若输入为一个非法的字符串,则输出“My God”。
- 样例输入:
5-5+8
- 样例输出:
5-58
代码如下:先根据第一个字符记录下是正数还是负数,或者直接是非法输入用flag变量记录下来。然后遍历后面的字符,转换成整数,如果遇到非法字符,则用flag变量记录下来。
#include <stdio.h>#include <stdlib.h>int main(){int n,num;int flag,isNegtive; char input[100]; char *p; while(scanf("%s",input)!=EOF){ p=input; isNegtive=flag=num=0;if(*p=='+'){ p++; isNegtive=0;}else if(*p=='-'){ p++; isNegtive=1;} else if(*p!='+'&&*p!='-'&&!(*p>='0'&&*p<='9')) flag=1; while(*p!='\0'){ if(*p>='0'&&*p<='9'){ num=num*10+(*p-'0'); p++; } else{ flag=1; break; } } if(flag==1) printf("My God\n"); else if(flag==0&&isNegtive==0) printf("%d\n",num); else if(flag==0&&isNegtive==1) printf("%d\n",0-num); } return 0;}
- 1508字符串转换成整数
- 整数转换成字符串
- 整数转换成字符串
- 整数转换成字符串
- 字符串转换成整数
- 字符串转换成整数
- 字符串转换成整数
- 字符串转换成整数
- 字符串转换成整数
- 字符串转换成整数
- 字符串转换成整数
- 字符串转换成整数
- 字符串转换成整数
- 字符串转换成整数
- 字符串转换成整数
- 字符串转换成整数
- 字符串转换成整数
- 字符串转换成整数
- LeetCode-Minimum Path Sum
- Period
- 13 多校第五场
- poj 2718 搜索
- 黑客英雄网
- 1508字符串转换成整数
- 一次谷歌面试趣事
- java.io.file 的常用文件操作
- apache 环境变量设置及rewrite规则
- 《算法竞赛-训练指南》第二章-2.2_UVa 11401
- OutputArea,用于模拟控制台输出信息的 Swing 控件
- VB.NET通过deletgrate传递线程的参数
- 类的访问权限 public,protect,private,final
- [每日一题] OCP1z0-047 :2013-08-07 SELECT---PRODUCT_INFORMATION...................27