字符串中整数.c 695 B

123456789101112131415161718192021222324252627282930313233
  1. #include <stdio.h>
  2. #include <string.h>
  3. #include <ctype.h>
  4. int main() {
  5. char input_str[256];
  6. fgets(input_str, sizeof(input_str), stdin);
  7. int sum = 0;
  8. char num_str[256] = "";
  9. int num = 0;
  10. int i;
  11. for (i = 0; i < strlen(input_str); i++) {
  12. if (isdigit(input_str[i])) {
  13. strncat(num_str, &input_str[i], 1);
  14. } else {
  15. if (strlen(num_str) > 0) {
  16. num = atoi(num_str);
  17. sum += num;
  18. memset(num_str, 0, sizeof(num_str));
  19. }
  20. }
  21. }
  22. if (strlen(num_str) > 0) {
  23. num = atoi(num_str);
  24. sum += num;
  25. }
  26. printf("%d\n", sum);
  27. return 0;
  28. }