|
发表于 2021-3-12 12:44:29
|
显示全部楼层
本帖最后由 jackz007 于 2021-3-12 12:47 编辑
- #include <stdio.h>
- int StrToInt(char str[])
- {
- int b , e , i , m , n ;
- for(m = 0 ; str[m] ; m ++) ;
- for(b = 0 ; b < m && (str[b] == ' ' || str[b] == '\t') ; b ++) ;
- n = 0 ;
- if(str[b] == '-' || (str[b] >= '0' && str[b] <= '9')) {
- e = 0 ;
- if(str[b] == '-') {
- e ++ ;
- b ++ ;
- }
- for(i = b ; i < m && str[i] >= '0' && str[i] <= '9' ; i ++) n = n * 10 + str[i] - '0' ;
- if(e) n = - n ;
- } else {
- return n ;
- }
- int main(void)
- {
- char s[80] ;
- scanf("%s" , s) ;
- printf("%d\n" , StrToInt(s)) ;
- }
复制代码
编译、运行实况
- D:\0002.Exercise\C>g++ -o x x.c
- D:\0002.Exercise\C>x
- 98765
- 98765
- D:\0002.Exercise\C>x
- -9
- -9
- D:\0002.Exercise\C>x
- 12345
- 12345
- D:\0002.Exercise\C>
复制代码 |
|