C语言-获取字符串中最长的单词.doc

上传人:b****2 文档编号:1398741 上传时间:2022-10-22 格式:DOC 页数:3 大小:56.50KB
下载 相关 举报
C语言-获取字符串中最长的单词.doc_第1页
第1页 / 共3页
C语言-获取字符串中最长的单词.doc_第2页
第2页 / 共3页
C语言-获取字符串中最长的单词.doc_第3页
第3页 / 共3页
亲,该文档总共3页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

C语言-获取字符串中最长的单词.doc

《C语言-获取字符串中最长的单词.doc》由会员分享,可在线阅读,更多相关《C语言-获取字符串中最长的单词.doc(3页珍藏版)》请在冰豆网上搜索。

C语言-获取字符串中最长的单词.doc

获取字符串中最长的单词

题目:

写一函数,输入一行字符,将字符串中最长的单词输出。

说明:

i、k用来遍历,flag作为是否是字母的标志,max表示最长单词的字母的个数,str[100]用来存放输入的字符串,ch[10]用来暂时存放各个单词,最多可存放10个字母的单词,str1[10]用来存放最长的单词。

#include

#include

charword(charstr[])

{inti,k,flag=0,max=0;

charstr1[10],ch[10];

for(i=0;str[i]!

='\0';i++)

if((65<=str[i]&&str[i]<=90)||(97<=str[i]&&str[i]<=122))\\如果该字符是字母

{if(flag==0)\\如果该字符是字母,且新单词未开始

{

k=0;

ch[k]=str[i];

flag=1;}

elseif(i==strlen(str)-1)\\如果该字符是字母,新单词已开始,且已到达字符串结尾

{k++;

ch[k]=str[i];

ch[k+1]='\0';

if(k+1>max)\\k+1表示单词的长度

{max=k+1;

strcpy(str1,ch);

}

}

else\\如果该字符是字母,新单词已开始,且未到达字符串结尾

{k++;

ch[k]=str[i];

}

}

elseif(flag==1)\\如果上一个单词已结束

{ch[k+1]='\0';

flag=0;

if(k+1>max)

{max=k+1;

strcpy(str1,ch);

}

}

printf("输入的字符串中,最长的单词有%d个字母,该单词是%s\n",max,str1);

}

main()

{chara[100];

printf("请输入一行字符:

\n");

gets(a);

word(a);\\调用word函数

}

函数大致流程图如下(“<=”是赋值):

从实参数组a中获取数据到数组str中。

i<=0

Str[i]不等于结

束符’\0’

输出str1,结束

Str[i]是字母

Flag==1

i==strlen(str)-1

Flag==0

k<=k+1

ch[k]<=str[i]

k<=k+1

ch[k]<=str[i]

ch[k+1]<=’\0’

flag<=1

ch[k+1]<=’\0’

k<=0

ch[k]<=str[i]

flag<=1

k+1>max

i<=i+1

max<=k+1

strcpy(strl,ch)

在C-FREE5.0上的运行结果:

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工程科技 > 电子电路

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1