HashMap


私信TA

用户名:dotcpp0594175

访问量:8851

签 名:

不写Bug的程序员不是好程序员

等  级
排  名 83
经  验 9400
参赛次数 3
文章发表 190
年  龄 18
在职情况 学生
学  校 湖南有色金属职业技术学院
专  业 有色冶金

  自我简介:

低头赶路,敬事如仪。

解题思路:
1.定义统计函数,传入字符串s

2.定义全局变量

3.在统计函数内定义两个变量c,l,C用来获取字符串的长度;i用来计数;使用isdigit函数来判断字符串中是否有数字存在,如果有则number+1;

4.gets获取字符串

5.调用函数

6.输出结果


注意事项:

下面是错误示范

#include<stdio.h>
#include<string.h>
int main()
{
    char arr[255]={0};
    int len = 0;
    int count = 0;
    scanf("%s",arr);//这样写是错误的
    int i = 0;
    len = strlen(arr);
          for(i = 0;i<=len;i++)
           {
               if(arr[i]>='0'&&arr[i]<='9'&&arr[i]!=' ')
                count++;
           }
     
  printf("%d",count);
}

参考代码:

正确的应该是这样的:

#include<stdio.h>  
#include<ctype.h>  
#include<string.h>  
 
//定义全局变量  
int number = 0;  //数字  
  
//定义统计函数  
void len_txt(char s[])  
{  
    int c;  
    int i;  
  
    c = strlen(s);  //获取字符串的长度  
  
    //分别判断  
    for (i = 0;i < c;i++){  
        if (isdigit(s[i]))  
        {  
            number++;  
        }  
    }  
  
}  
  
//主函数  
int main()  
{  
  
    char s[100];  //定义字符串最大长度  
    gets(s);  //获取字符串  
    len_txt(s);  //调用函数  
    printf("%d ",number);  
  
    return 0;  
  
}


 

0.0分

2 人评分

  评论区

  • «
  • »