| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 624 人关注过本帖
标题:求解由实参传入字符串,统计数字·字母·空格个数
只看楼主 加入收藏
sunshinefly
Rank: 1
等 级:新手上路
帖 子:46
专家分:2
注 册:2012-12-11
结帖率:62.5%
收藏
已结贴  问题点数:20 回复次数:10 
求解由实参传入字符串,统计数字·字母·空格个数

#include<stdio.h>
int main()
{
    int f(char c);
    char a;
    int g=0,h=0,j=0,i=0;
    a=getchar();
    f(a);
    printf("%d\n%d\n%d\n%d\n",g,h,j,i);
    return 0;
}
int f(char c)
{
    int g=0,h=0,j=0,i=0;
    c=getchar();
    while(c!='\n')
    {
        if((c>='a'&&c<='z')||(c>='A'&&c<='Z'))
        {
            g++;
        }
        else if(c>='0'&&c<='9')
        {
            h++;
        }
        else if(c==' ')
        {
            j++;
        }
        else
        {
            i++;
        }
        c=getchar();
    }
    return g,h,j,i;
}


[ 本帖最后由 sunshinefly 于 2013-3-6 08:50 编辑 ]
搜索更多相关主题的帖子: include return 统计 字母 
2013-03-06 08:45
wp231957
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:神界
等 级:贵宾
威 望:423
帖 子:13688
专家分:53332
注 册:2012-10-18
收藏
得分:0 
程序欲实现啥功能   给出样例输入 样例输出

谁有工夫去猜你的代码是干啥的啊

DO IT YOURSELF !
2013-03-06 08:46
wp231957
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:神界
等 级:贵宾
威 望:423
帖 子:13688
专家分:53332
注 册:2012-10-18
收藏
得分:0 
上来就问  哪错了  鬼才知道哪错了呢

DO IT YOURSELF !
2013-03-06 08:47
wp231957
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:神界
等 级:贵宾
威 望:423
帖 子:13688
专家分:53332
注 册:2012-10-18
收藏
得分:0 
int f(char c)
这个形参只能接受一个字符  无法接受一个字符串
应该是void f(char* c)  一类的

还有 return g,h,j,i;  c语言是没有这个功能的  一次返回4个值  只能返回一个值


[ 本帖最后由 wp231957 于 2013-3-6 08:52 编辑 ]

DO IT YOURSELF !
2013-03-06 08:51
sunshinefly
Rank: 1
等 级:新手上路
帖 子:46
专家分:2
注 册:2012-12-11
收藏
得分:0 
回复 4楼 wp231957
为什么运行后还是全是0呢,大哥
2013-03-06 08:53
wp231957
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:神界
等 级:贵宾
威 望:423
帖 子:13688
专家分:53332
注 册:2012-10-18
收藏
得分:0 
难道我4楼 白说了吗

DO IT YOURSELF !
2013-03-06 08:54
sunshinefly
Rank: 1
等 级:新手上路
帖 子:46
专家分:2
注 册:2012-12-11
收藏
得分:0 
回复 6楼 wp231957
网卡,刚刚刷新,不好意思
2013-03-06 08:56
sunshinefly
Rank: 1
等 级:新手上路
帖 子:46
专家分:2
注 册:2012-12-11
收藏
得分:0 
回复 4楼 wp231957
那怎么操作,我们只学了return
2013-03-06 09:02
peng00439
Rank: 1
来 自:河北保定
等 级:新手上路
帖 子:2
专家分:6
注 册:2012-3-5
收藏
得分:5 
你题中都说了传入的字符串,而你传入的却是一个字符。
再有你的函数返回了多个整数,而接收时只能接收一个值,你可以把要返回的数放在一个数组里,一块返回。
更简单的方法就是:干脆别用函数了,直接在主函数里写算了。
2013-03-06 09:22
wp231957
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:神界
等 级:贵宾
威 望:423
帖 子:13688
专家分:53332
注 册:2012-10-18
收藏
得分:15 
程序代码:
#include <stdio.h>

void count_w(char* source,int* sum_num,int* sum_char,int* sum_space)
{
    while(*source!='\0')
    {
        if(*source>='a' && *source<='z') (*sum_char)++;
        if(*source>='A' && *source<='Z') (*sum_char)++;
        if(*source>='0' && *source<='9') (*sum_num)++;
        if(*source==0x20) (*sum_space)++;
        source++;
    }
}
int main(void)
{
    int sum_num=0,sum_char=0,sum_space=0;
    char* dest="122314dslkjfaKSLDJ     23sdfa";
    count_w(dest,&sum_num,&sum_char,&sum_space);
    printf("sum of num is %d\n",sum_num);
    printf("sum of char is %d\n",sum_char);
    printf("sum of space is %d\n",sum_space);
    return 0;
} 

DO IT YOURSELF !
2013-03-06 09:23
快速回复:求解由实参传入字符串,统计数字·字母·空格个数
数据加载中...
 
   



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

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