习题 7.10 写一个函数,输入一行字符,将此字符串中最长的单词输出。_一梦花海的博客-程序员秘密

###C程序设计(第四版) 谭浩强 习题7.10 个人设计
####习题 7.10 写一个函数,输入一行字符,将此字符串中最长的单词输出。

#include<stdio.h>
int main()
{
    int word_length = 0, word_max=0;
    printf("请输入一个字符串:");
    char s[20];
    gets(s);
    int i,p;//这个p是用来记录最长单词的位置
    for (i = 0; s[i] != '\0'; i++)
    {
        if (s[i] == ' ')//扫到空格,则结算是否为最长的单词
        {
            if (word_length > word_max)
            {
                word_max = word_length;
                p = i;
            }

            word_length = 0;
        }
        else//如果i扫到的不是空格,那么开始计算单词的长度
            word_length++;

    }

    if (word_length > word_max)//此乃用于最长的单词在结尾的情况
    {
        word_max = word_length;
        p = i;
    }
    printf("最长单词的位置:%d\n",p-word_max+1);
    char longest[100];
    for (p = p - word_max, i = 0; word_max > 0; word_max--,p++, i++)
        longest[i] = s[p];
    longest[i] = '\0';
    printf("The longest word is %s\n", longest);

    return 0;
}

第二种方法:

  灵活运用strtok()函数

#include <stdio.h>
#include <string.h>
#define N 20
char s[N + 1], max[N + 1];
int main(void)
{
    char *p;
    int maxlen, len;
    while(gets(s) != NULL) {
        maxlen = 0;
        max[0] = '\0';
        p = strtok(s, " ");
        while(p) {
            len = strlen(p);
            if(len >= maxlen) {
                maxlen = len;
                strcpy(max, p);
            }
            p = strtok(NULL, " ");
        }
        printf("%s\n", max);
    }
    return 0;
}

 

 

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_34844201/article/details/88219442

智能推荐

最恐怖的12个英语单词_MRman0404的博客-程序员秘密

1. honorificabilitudinitatibus  这个字是由27个字母组成的。出现在大文豪莎士比亚的剧本「空爱一场」love\’s labou  \’s lost里,意思是「不胜光荣」。      2. antidisestablishmentarianism  这个字是由28个字母组成的。根据范克和华格若尔斯编的「英语新标准辞」里面的解释  ,这个字的意思...

简单的java内存结构,一句话概括“堆、栈、方法区详解”_e根油条的博客-程序员秘密

jvm 1、什么是jvm java程序的运行环境(二进制字节码的运行环境) 2、jvm特点 1、一次编写,导出运行 2、自动管理内存,垃圾回收功能,刚开始java竞标的是c语言,c语言需要自己管理内存,不慎就会内存泄漏,java减少了程序员出错的机会 3、数组下标越界检查,c语言如果下标越界,可能覆盖其他代码的内存,非常严重。...

microbiomeViz:绘制lefse结果中Cladogram_cladogram图怎么分析_一个人旅行*-*的博客-程序员秘密

平日经常会分析shotgun宏基因组的数据,我们的pipeline使用MetaPhlAn,Kraken等profiler。这种数据经常会产生一个表格,如下download.file("https://bitbucket.org/biobakery/biobakery/raw/tip/demos/biobakery_demos/data/metaphlan2/output/SRS014459-Stool_profile.txt", 'SRS014459-Stool_profile.txt')knitr

ubuntu nginx环境搭建_ubuntu nginx搭建_爱吃鱼的喵996的博客-程序员秘密

进入目录:/usr/local/src1、下载Nginx及相关组件下载nginx、openssl、zlib、pcre压缩包(使用超级管理员权限)wget http://nginx.org/download/nginx-1.10.2.tar.gzwget http://www.openssl.org/source/openssl-fips-2.0.10.tar.gzwget http://zlib.net/zlib-1.2.11.tar.gzwget https://netix.dl.source

Nacos 2.1.1 正式发布,微服务大变天_技术琐事的博客-程序员秘密

最近 Nacso 2.1.1 正式发布了!2.1.1 版本特性该版本的核心解决方案 Nacos 2.0 包括使用公开发布的稳定性问题(默认实现、Grpc 请求和发行版的一致性性能等),另外 Beta 测试插件“测试两个注册 协议服务”和“服务跟踪 ”个新功能。一直以来,Nacos-Sync,Nacos-Sync,Nacos-Sync 等其他社区的主要需求,作为支持多个注册中心迁移的工具,帮助一个注册用户从 Eureka 迁移中心,Consul,Consul 等其他社区注册服务商到 Nacos 中。在 Nac

SpringBoot自动装配(版本2.4.4)_Java小白白又白的博客-程序员秘密

[email protected] 来看一下自动装配的起点:@SpringBootApplication 点进去看下@SpringBootApplication源码: 三个Java元注解:@Target、@Retention、@Documented。 @Inherited:如果一个类用上了@Inherited修饰的注解,那么其子类也会继承这个注解。具体可以查看这篇博文:https://blog.csdn.net/qq_43...

随便推点

广技师专插本计算机专业招生,2020年广东技术师范大学专插本各专业最低投档分数线..._绿豆貉的博客-程序员秘密

原标题:2020年广东技术师范大学专插本各专业最低投档分数线 2020年广技师专插本招生专业计划数文科类、理科类、艺术类、职教师资类共投档553名,招生各专业投档最低分数线公布如下: 图中就是今年广技师今年各个招生专业的投档分数线和投档数,其中财务会计教育专业的投档数和最低投档分数线是最高的,退役士兵人数也是在其余专业中最多的。 从上图中,我们可以知道广技师计划招生人数为881人,实际录取人数为5...

(jQuery Datatable)jQuery Datatable_betterbo的博客-程序员秘密

参考资源http://blog.csdn.net/builderwfy/article/details/50401302http://ask.csdn.net/questions/257315http://blog.csdn.net/panbo434557245/article/details/39050071// *************************************//

有限元固体力学计算软件code_aster集成平台Salome_meca的安装问题记录_salome meca_zzoe5的博客-程序员秘密

有限元固体力学计算软件Salome_Meca--&gt;code_aster安装问题记录前言salome_meca2018安装功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入前言由于code_aster自身的版本升级和linux

r ridge回归_R语言中的岭回归、套索回归、主成分回归:线性模型选择和正则化_weixin_39695241的博客-程序员秘密

原文链接:http://tecdat.cn/?p=9913​tecdat.cn概述和定义在本课程中,我们将考虑一些线性模型的替代拟合方法,除了通常的 普通最小二乘法。这些替代方法有时可以提供更好的预测准确性和模型可解释性。预测精度:线性,普通最小二乘估计将具有低偏差。OLS也表现良好, n &gt;&gt; p。但是,如果 n 不比p大很多 ,则拟合可能会有很多可变性,从而导致拟合过...

antdesign——layout_ant-layout_小曲曲的博客-程序员秘密

bug1当组件内容很长时:控制左侧菜单不可上下滚动当组件内容很长时:右侧正常上下滚动,且footer在最下边当组件内容很短时:内容部分撑开页面布满全屏//BasicLayout&lt;style lang="less" scoped&gt;/deep/.ant-layout { height: 100vh;}/deep/.ant-layout-content { min-height: auto !important;}&lt;/style&gt;bug2:菜单点击收.

CTF-Misc-[BJDCTF2020]鸡你太美_[bjdctf2020]鸡你太美 1_归子莫的博客-程序员秘密

CTF-Misc-[BJDCTF2020]鸡你太美博客说明文章所涉及的资料来自互联网整理和个人总结,意在于个人学习和经验汇总,如有什么地方侵权,请联系本人删除,谢谢!本文仅用于学习与交流,不得用于非法用途!CTP平台网址https://buuoj.cn/challenges题目Misc类,[BJDCTF2020]鸡你太美思路这类题目首先把文件下载下来,是一个gif第一张能够打开,第二张打不开使用bless我是在linux下,当然你可以在windows下使用winhex对比

推荐文章

热门文章

相关标签