标题:小白再求助一道题,运行时间超时了,求优化。
只看楼主
月影湖
Rank: 1
等 级:新手上路
帖 子:9
专家分:7
注 册:2019-11-25
结帖率:0
 问题点数:0 回复次数:5 
小白再求助一道题,运行时间超时了,求优化。
题目:编写一函数,由实参传来一个字符串,统计此字符串中字母、数字、空格和其它字符的个数,在主函数中输入字符串以及输出上述结果。只要结果,别输出什么提示信息。(字符串最多10000字符)
#include<stdio.h>
int c=0,d=0,s=0,o=0;
int f(char a[]);
int main()
{
    char a[10000];
    gets(a);
    f(a);
    return 0;
}
int f(char a[])
{
    int i;
    for(i=0;a[i]!='\0';i++)
    {
        if((a[i]>='a'&&a[i]<='z')||(a[i]>='A'&&a[i]<='Z'))c++;
        else if(a[i]>='0'&&a[i]<='9') d++;

        else if(a[i]==' ')s++;
        else o++;
    }
     printf("%d %d %d %d",c,d,s,o);
    return 0;
}
搜索更多相关主题的帖子: 字符串 char 时间 运行 int 
2019-12-07 13:10
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:507
帖 子:8890
专家分:53117
注 册:2011-1-18
得分:0 
char a[10000]
按题目要求是
char a[10001]


gets早就被废弃了吧
2019-12-07 15:40
月影湖
Rank: 1
等 级:新手上路
帖 子:9
专家分:7
注 册:2019-11-25
得分:0 
回复 楼主 月影湖
老师没讲gets过时了,我也只学过scanf,getchar,gets,谢谢你!
2019-12-07 16:20
月影湖
Rank: 1
等 级:新手上路
帖 子:9
专家分:7
注 册:2019-11-25
得分:0 
回复 2楼
知道哪儿可以优化的话还望指出,谢谢
2019-12-07 16:24
Jason_
Rank: 2
来 自:浙江台州
等 级:论坛游民
帖 子:88
专家分:66
注 册:2019-7-14
得分:0 
我学的是c++,但是C语言里没有string吗?用string会不会快一点?
2019-12-07 17:04
月影湖
Rank: 1
等 级:新手上路
帖 子:9
专家分:7
注 册:2019-11-25
得分:0 
回复 5楼 Jason_
谢谢,有string的,但还是不行
2019-12-07 18:29



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-498260-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.111835 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved