夜夜笙歌ysg 发表于 2020-2-14 01:48:52

不懂就问谢谢大佬

#include <stdio.h>

int main()
{
      int ch;
      int num = 0;

      printf("请输入待转换的字符串:");

      do
      {
                ch = getchar();

                if (ch >= '0' && ch <= '9')
                {
                        num = 10 * num + (ch - '0');
                }
                else
                {
                        if (num)
                        {
                              break; // 如果已有数字,则退出循环
                        }
                }

      }
      while (ch != '\n');

      printf("结果是:%d\n", num);

      return 0;
}


num = 10 * num + (ch - '0');num是0那么我把10换成100为什么就不管用了{:10_266:} ;

召唤风云 发表于 2020-2-14 07:22:44

21=2*10+1,而不是2*100+1,num不是一直为0

4goodworld 发表于 2020-2-14 09:54:13

num = 10 * num + (ch - '0');num是0那么我把10换成100为什么就不管用了
这个说的啥意思呢?
页: [1]
查看完整版本: 不懂就问谢谢大佬