| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 438 人关注过本帖
标题:[求助]关于指针的问题?
取消只看楼主 加入收藏
wchx215
Rank: 1
等 级:新手上路
帖 子:70
专家分:0
注 册:2006-9-4
收藏
 问题点数:0 回复次数:2 
[求助]关于指针的问题?
题目:输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。
我下面的程序编译没问题,可答案老是不正确,英文字母、空格、数字的个数多一倍,而其它字符的个数在我的电脑上
显示为62,我一直不明白为什么会这样?请高手帮帮忙。顺便说一下,当我不用指针,用s=getchar()就不会有这种问题。
#include "stdio.h"
void main(void)
{char *s;
 int letters=0,space=0,digit=0,others=0;
 printf("please input some characters\n");
gets(s);
 while(*s++!='\n')
 {
 if(*s>='a'&&*s<='z'||*s>='A'&&*s<='Z')
  letters++;
 else if(*s==' ')
  space++;
   else if(*s>='0'&&*s<='9')
       digit++;
     else
       others++;
}
printf("all in all:char=%d space=%d digit=%d others=%d\n",letters,
space,digit,others);
}
搜索更多相关主题的帖子: 指针 
2006-09-04 20:41
wchx215
Rank: 1
等 级:新手上路
帖 子:70
专家分:0
注 册:2006-9-4
收藏
得分:0 
哦!对,指针指向的空间不正确。可是我补上:
char c[50],*s;
s=c;
还是不行。
2006-09-04 21:08
wchx215
Rank: 1
等 级:新手上路
帖 子:70
专家分:0
注 册:2006-9-4
收藏
得分:0 
谢谢你了,原来问题出现在'\0',不能用'\n'呀!答案就对了!!!
2006-09-04 21:41
快速回复:[求助]关于指针的问题?
数据加载中...
 
   



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

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