fork download
  1. #include <stdio.h>
  2. #include <string.h>
  3. #include <math.h>
  4. #define TRUE 0
  5. #define FALSE 1
  6.  
  7. void main(void){
  8.  
  9. char szraw[10];
  10. char tmp;
  11.  
  12. //TRUE负数,FALSE正数
  13. int minus = FALSE;
  14.  
  15. int idx = 0,iret = 0, len = 0;
  16.  
  17. printf("请输入数字:");
  18. scanf("%s",&szraw);
  19.  
  20. len = strlen(szraw);
  21. do
  22. {
  23. tmp = szraw[idx];
  24. if(idx == 0 && tmp == '-'){
  25. minus = TRUE;
  26. len -= 1;
  27. idx += 1;
  28. continue;
  29. }
  30.  
  31. // 负数
  32. if(minus ==TRUE)
  33. iret += (tmp-'0') * pow(10.0, len-idx++);
  34. //正数
  35. if( minus == FALSE)
  36. iret += (tmp-'0') * pow(10.0, len-idx++-1);
  37.  
  38. } while (szraw[idx] !='\0');
  39.  
  40. if(minus == TRUE) iret = -iret;
  41. printf("%d\n",iret);
  42.  
  43. }
  44.  
Runtime error #stdin #stdout 0s 4544KB
stdin
-1234
stdout
请输入数字:-1234