題目描述
小明的老師給小明出了一道題目:數數一篇文章出現了多少個數字,請你幫幫他吧。
輸入
輸入一個字符串,由空格、英文字母、數字組成,以回車結束,長度小於1000。
輸出
輸出整數個數(不是數字字符個數哦)。
樣例輸入
365grh 27ha578
樣例輸出
3
提示
注意:010是兩個數字,0和10
tips:
1 統計有多少個數字,採用標誌位判斷法,默認flag=0 ,如果碰到一個字符爲數字,總數+1 然後標誌位置 1 如遇到下一個數字 flag變爲0
2 遇到010爲兩個數字的,字符爲0 flag=0 下一位爲數字 總數+1 跳出這次循環
#include<stdio.h>
#include<ctype.h>
int main(){
char buf[1000];
int count = 0;
int flag = 0;
gets(buf);
for (int i = 0; i < strlen(buf); i++)
{
if (isdigit(buf[i]) && flag==0) //正常的統計 eg:12345這種
{
if (buf[i]=='0'&&isdigit(buf[i+1])) //特殊情況 010
{
count++;
flag = 0;
continue;
}
count++;
flag = 1;
}
if (!isdigit(buf[i]))
{
flag = 0;
}
}
printf("%d\n", count);
}