66问答网
所有问题
统计字符串中最长单词的长度!C语言~~
如题所述
举报该问题
推荐答案 2019-06-21
你的程序有以下几个逻辑错误:
1、用
if(str[i]>='A'&&str[i]<='z')
判断是否是字母。
字母在ASCII中不是连续的,
大写字母A-Z
为65-90
小写字母a-z
为97-132
所以之间会有6个字符(他们是[
\
]
^
_
`
)也被你当做单词的组成部分被计入长度。
2、当一个单词没有以非字母结束时,最后一个else没有被执行到,所以max的值仍然是
上一次读到的最长单词长度,
所以最后输出时要再判断一下max和count的大小,输出大的那个。
帮你修改后的程序如下:
#include
main()
{char
str[100];
int
max=0,count=0,i;
printf("Input
a
string:\n");
gets(str);
for(i=0;str[i];i++)
{
if(str[i]>='A'&&
str[i]<='Z')
{
count++;
}
else
if(
str[i]>='a'&&
str[i]<='z'
)
{
count++;
}
else
{
if(max
count)
printf("%d",max);
else
printf("%d",count);
getch();
}
温馨提示:答案为网友推荐,仅供参考
当前网址:
http://66.wendadaohang.com/zd/UvspD9UUx2psxp2ipDi.html
其他回答
第1个回答 2020-01-27
if(str[i]>='A'&&str[i]<='z')
这句有点问题,
Z和a之间还有一些字符,
应该排除掉
这个程序的主要问题是当读到最后一个字符NULL时,
for循环退出,
这时,
count的值对应最后一个单词,
而这时这个单词的长度没有进入for中的else进行比较,从而max的值会不对.
所以你再在for后面加几句代码比较一次就可以了.
相似回答
C语言
在
字符串中
找到
最长单词
答:
假定单词不包括标点符号,即全由字母组成2、根据上面的特点,读取一个单词3、计算单词长度4、与当前最大单词长度max(初值为0)比较,如果大于max,则记录下当前单词,并将其长度赋值给max5、重复2-4,直到读单词结束(到
字符串
尾)。6、输出
最长单词长度
和单词 7、例程:include<stdio.h>#include<
s
...
c语言
求一段
字符串中最长单词
答:
printf("%c",a[i]);}
C语言
用函数求
字符串中最长单词
.
答:
currLen++;} if(currLen>maxLen)//当前
单词的长度
大于最大值,进行赋值 { maxLen = currLen;MaxStart = currStart;} if(str[i]==' ')//遇到空格,即一个单词已经结束。{ currLen = 0;} } for(j=MaxStart;j<MaxStart+maxLen;j++)printf("%c",str[j]);} 运行效果:...
C语言
输出一行
字符串中最长的单词
答:
} Voidf(char
c
[50]){ Intlen=0,lenth=0,I,flag=0;For(I=0;
C
(我)!='\0';我++){ 如果(c[我]!='')Len++;If(c[I]==''){ If (len > lenth){
长度
=兰;国旗=i-lenth;//当有一个新的
最长的字符串
时,使用flag记录字符串开始下标...
C语言
问题 求输出输入
字符串中的最长单词
?
答:
输入:aaa bbb
cc
c ddd 输出结果是:aaa bbb ccc ddd 分析:scanf("%s%s",s1,s2);// 读进去的是s1="aaa",s2="bbb"gets(s3); // 此时s3="\n",这个换行符是"bbb"后面的回车 gets(s4);// s4="ccc ddd",gets函数读的是一整行 ...
c语言
编程在一个已知的
字符串中
查找
最长单词
,假定字符串中只含字母...
答:
include<stdio.h>#include<
string
.h>#define M 1000int main(){int low;// 单词的起始下标int high;// 单词的结束位置int i;// 循环变量 int count;//
统计最长单词的长度
int temp;// 中间变量 int low_temp;int high_temp;char p[M];// 存储有多个单词的字符指针gets(p);count = 0;...
大家正在搜
计算最长的字符串长度c语言
c语言求字符串的长度并输出
c语言strlen计算字符串长度
c语言判断字符串长度的函数
c语言字符串长度怎么看
c语言判断字符串长度
c语言读取字符串长度
c语言字符串字节数怎么计算
c语言字符数组长度