int Scan()
{
int res = 0, ch, flag = 0;
if((ch = getchar()) == '-') //判断正负
flag = 1;
else if(ch >= '0' && ch <= '9') //得到完整的数
res = ch - '0';
while((ch = getchar()) >= '0' && ch <= '9' )
res = res * 10 + ch - '0';
return flag ? -res : res;
}
使用方法:【该外挂适合纯数字输入!】
int a;
a = Scan(); //相当于scanf("%d", &a);
思路很简单:
第一步:先判断当前字符是不是'-'号,如果是,flag标记为1(表示该整数是负数);否则,弱该字符是数字,则取出该数字。
第二步:得到完整的数,只要是连续的数字,就一直累乘。
第三步:根据flag的值返回该整数的值。