| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 567 人关注过本帖
标题:由一道题目引开的另外一道题目
只看楼主 加入收藏
xiaoppi
Rank: 1
等 级:新手上路
帖 子:31
专家分:0
注 册:2006-2-22
收藏
 问题点数:0 回复次数:6 
由一道题目引开的另外一道题目
在学C语言的时候做拉这样的一个题目:输入一串字符,统计他的空格,字母,数字,特殊符号的个数并且输出。
由这个题目我改拉个字变为:输入一段字符,统计他的空格,字母,数字,特殊符号的个数并且输出。
以下是我原来的代码:(比较简单,就不写注释了,希望大家原谅)
#include <stdio.h>
main()
{ int s=0,n=0,l=o,r=0;
char a;
for(;(a=getchar())=='\n';)
{ if(a==" ") s++;
else
{if(a>=0&&a<=9) n++;
else
{ if((a>"a"&&a<"z")||(a>"A"&&a<"Z")) l++;
else r++;
}
}
}
printf("空格个数为%d 数字个数为%d 字母个数为%d 特殊符号个数为%d"s,n,l,r);
getch();
}
当我输入一段字符的时候问题就出现了:无论怎么样输入他最大就只能接受127个;
下面是我的尝试:是不是a定义为有符的字符,于是,我把a定义为字符数组,结果还是一样;是不是getchar()是一个有符的int型,到网上找了好久都不知道怎么办。
我的疑惑就为什么系统只能输入127个呢??
怎么样才能接受大于127个的呢?<>
搜索更多相关主题的帖子: 特殊符号 include C语言 统计 字母 
2006-03-18 06:33
cordier
Rank: 2
等 级:论坛游民
威 望:1
帖 子:449
专家分:14
注 册:2006-2-9
收藏
得分:0 
好像是DOS的限制

2006-03-18 08:00
神vLinux飘飘
Rank: 13Rank: 13Rank: 13Rank: 13
来 自:浙江杭州
等 级:贵宾
威 望:91
帖 子:6140
专家分:217
注 册:2004-7-17
收藏
得分:0 
可以自己写一个输入函数,返回一个字符串,不难的
用while语句配合getchar()函数和realloc()函数即可

淘宝杜琨
2006-03-18 08:26
haishanglang
Rank: 1
等 级:新手上路
帖 子:378
专家分:0
注 册:2006-3-2
收藏
得分:0 
楼主的程序以输入什么作为结束的条件,我怎么运行老出错啊,是统计错误

2006-03-18 08:40
xiaoppi
Rank: 1
等 级:新手上路
帖 子:31
专家分:0
注 册:2006-2-22
收藏
得分:0 
不好意思太快了没注意把l=0,打成了l=o


谢谢神的指点,我一会去写个函数,不行,明天早上再来发贴求教各位拉

2006-03-19 06:44
youxiawei
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2006-3-19
收藏
得分:0 
#include <stdio.h>
main()
{
int s=0,n=0,l=0,r=0;
    char a;
    for(;(a=getchar())!='\n';)
{
  if(a==' ') s++;
  else
  {
   if(a>=0&&a<=9) n++;
   else
   {
    if((a>'a'&&a<'z')||(a>'A'&&a<'Z')) l++;
    else r++;
   }
  }
    }
printf("空格个数为%d 数字个数为%d 字母个数为%d 特殊符号个数为%d",s,n,l,r);
getchar();
return 0;
}

[此贴子已经被作者于2006-3-19 10:47:23编辑过]

2006-03-19 10:46
xiaoppi
Rank: 1
等 级:新手上路
帖 子:31
专家分:0
注 册:2006-2-22
收藏
得分:0 
现在的问题是怎么把自己写函数加到头文件里面

2006-03-21 13:38
快速回复:由一道题目引开的另外一道题目
数据加载中...
 
   



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

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