解题思路:
1)如果输入字符串,我们可以根据其结尾的'\0'代表是否输入完成注意事项:
2)可以使用scanf,配合字符集匹配来完成,[ ]: 方括号表示一个字符类,它匹配方括号内的任意一个字符。如果匹配则就会继续读取,^\n表示匹配除了换行符之外的所有字符,包括空格
3)也可以使用fgets()函数,fgets() 会读取指定的文件流中的字符,直到遇到换行符 '\n'、文件结束符 EOF,并在字符串的末尾添加一个 null 字符 '\0
参考代码:
#include<stdio.h>
#define CHAR_ARRAY_MAX 255
int main()
{
// char string[CHAR_ARRAY_MAX];
char string[CHAR_ARRAY_MAX];
int digital_number = 0;
// 用下面哪一个都行
// scanf("%[^\n]", string);
fgets(string, sizeof(string), stdin);
for (int i = 0; string[i] != '\0'; i++)
{
if (string[i] >= 48 && string[i] <= 57)
{
digital_number++;
}
}
printf("%d\n", digital_number);
return 0;
}
0.0分
0 人评分
WU-输出正反三角形 (C++代码)浏览:1100 |
C语言程序设计教程(第三版)课后习题9.10 (C语言代码)浏览:583 |
打印十字图 (C语言代码)浏览:2822 |
简单的a+b (C语言代码)浏览:572 |
大神老白 (C语言代码)浏览:637 |
矩形面积交 (C语言代码)浏览:1433 |
输出九九乘法表 (C语言代码)浏览:1172 |
C语言程序设计教程(第三版)课后习题12.1 (C语言代码)浏览:689 |
C语言程序设计教程(第三版)课后习题12.6 (C语言代码)浏览:732 |
C语言程序设计教程(第三版)课后习题5.4 (C语言代码)浏览:501 |