| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 990 人关注过本帖
标题:输入字符,统计。帮小弟做个题哦!
只看楼主 加入收藏
wonderyude
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2007-4-16
收藏
 问题点数:0 回复次数:10 
输入字符,统计。帮小弟做个题哦!
输入一行字符,分别统计出其中英文字母,空格,数字,和其他字符的个数。
搜索更多相关主题的帖子: 字符 统计 输入 数字 
2007-04-19 13:41
pinglideyu
Rank: 3Rank: 3
来 自:武汉工程大学
等 级:论坛游侠
威 望:1
帖 子:735
专家分:140
注 册:2007-1-7
收藏
得分:0 

给你个参考吧
#include <stdio.h>
#include <stdlib.h>

int main(void)
{
char ch;
int cout1=0,cout2=0;
int cout3=0,cout4=0;
printf("input the character ch:");
ch=getchar();
while(ch!='\n')
{

if (ch>='0'&&ch<='9')
cout1++;
else if (ch>='a'&&ch<='z'||ch>='A'&&ch<='Z')
cout2++;
else if (ch==' ')
cout3++;
else
cout4++;
ch=getchar();
}
printf("其中数字的个数:%d\n",cout1);
printf("其中字母的个数:%d\n",cout2);
printf("其中空格的个数:%d\n",cout3);
printf("其它的个数:%d\n",cout4);
return 0;
}


~~我的明天我知道~~
2007-04-19 14:25
spider1987
Rank: 1
等 级:新手上路
帖 子:172
专家分:0
注 册:2007-2-18
收藏
得分:0 
我想问一下
stdlib.h是什么头文件呢?我试了一下,去掉也可以运行
2007-04-19 14:29
小墨墨
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2007-4-17
收藏
得分:0 
此题很熟悉
2007-04-19 14:33
pinglideyu
Rank: 3Rank: 3
来 自:武汉工程大学
等 级:论坛游侠
威 望:1
帖 子:735
专家分:140
注 册:2007-1-7
收藏
得分:0 
  可以去掉的。我刚写了一个exit()函数,没有来得及把头文件去掉,谢谢了哦。

~~我的明天我知道~~
2007-04-19 14:44
ayakyd
Rank: 1
等 级:新手上路
帖 子:35
专家分:0
注 册:2007-4-19
收藏
得分:0 

呵呵,我也正好开始学C,现在碰到个类似这样的题目:“要求用户输入一个字符串,然后统计字符串中空格的数量(要求使用指针来遍历数组)”

我不明白的是如何去定义这个数组,如果用malloc定义的话怎么做呢?

我写了个,但是有错误的,不大明白~

#include <stdio.h>
#include <stdlib.h>
#define MAX 50

void main()
{
int x,i=0,n=0;
char ch,*p,a[MAX];
p=a;
printf("请输入一个字符串:");
for (x=0;x<5;x++)
{
ch=getchar();
a[x]=ch;
}
do{
x++;
if (*(p+n-1)=' ')
i++;

}while (*(p+n-1)!='/n');
printf("该字符串中空格的数量为:%d",i);
}

2007-04-19 15:19
pinglideyu
Rank: 3Rank: 3
来 自:武汉工程大学
等 级:论坛游侠
威 望:1
帖 子:735
专家分:140
注 册:2007-1-7
收藏
得分:0 

你的好像很麻烦似的,这个吧。
#include <stdio.h>
#include <stdlib.h>
#define MAX 50

void main()
{
int i=0;
char *p,a[MAX];
p=a;
printf("请输入一个字符串:");
p=(char *)malloc(MAX*sizeof(char));
gets(p);
while(*p!='\0')
{
if (*p==' ')
i++;
p++;
}
printf("该字符串中空格的数量为:%d\n",i);
}


~~我的明天我知道~~
2007-04-19 16:00
沙漠水手
Rank: 2
等 级:论坛游民
帖 子:69
专家分:40
注 册:2007-3-17
收藏
得分:0 

#include<stdio.h>
main()
{char c;
int letter=0,space=0,digit=0,other=0;
printf(“请输入一行字符:\n”);
while((c=getchar())!=’\n’);
{if (c>=’a’&&c<=’z’||x>=’A&&c<=’Z’)
letter++;
else if (c= =’’)
space++;
else if(c>=’0’&&c<=’9’)
digit++;
else
other++;
}

2007-04-19 16:41
pinglideyu
Rank: 3Rank: 3
来 自:武汉工程大学
等 级:论坛游侠
威 望:1
帖 子:735
专家分:140
注 册:2007-1-7
收藏
得分:0 
呵呵。。。和我那个差不多!

~~我的明天我知道~~
2007-04-19 16:48
ayakyd
Rank: 1
等 级:新手上路
帖 子:35
专家分:0
注 册:2007-4-19
收藏
得分:0 

HOHO,谢谢“pinglideyu”
因为不知道gets()和puts()函数搞得很复杂,现在明白了~

2007-04-20 10:28
快速回复:输入字符,统计。帮小弟做个题哦!
数据加载中...
 
   



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

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