1150: 数数多少个整数
时间限制: 1 Sec 内存限制: 128 MB
提交: 7516 解决: 2853
[状态] [讨论版] [提交] [命题人:admin]
题目描述
小明的老师给小明出了一道题目:数数一篇文章出现了多少个数字,请你帮帮他吧。
输入
输入一个字符串,由空格、英文字母、数字组成,以回车结束,长度小于1000。
输出
输出整数个数(不是数字字符个数哦)。
样例输入 Copy
365grh 27ha578
样例输出 Copy
3
提示
注意:010是两个数字,0和10
#include <stdio.h>
#include <ctype.h>
// 数数多少个整数
int main() {
char str[1000];
// 输入字符串
gets(str);
int i, flag = 0, t = 0;
for(i = 0; str[i] != '\0'; i++){
// 判断字符串str[i]是否是数字
if(isdigit(str[i]) && flag == 0){
// 010这种
if(str[i] == '0' && isdigit(str[i + 1])){
t++;
flag = 0;
continue;
}
// str[i]!='0'时
t++;
// 防止重复计算
flag = 1;
}
// str[i]非数字时flag置0
if(!isdigit(str[i]))
flag = 0;
}
printf("%d\n", t);
return 0;
}