谭浩强 C程序设计 8.10写一函数,输入一行字符,将此字符串中最长的单词输出。

Posted Allen101

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了谭浩强 C程序设计 8.10写一函数,输入一行字符,将此字符串中最长的单词输出。相关的知识,希望对你有一定的参考价值。

 代码量稍微一大,就会出现bug,浪费很多时间,继续努力。

#include <stdio.h>

void main(){
    void maxLen(char str[50]);
    char str[50];
    gets(str);
    maxLen(str);
}

void maxLen(char str[50]){
    int i,j=1,t=-1,start=0,m;
    int maxNum(int num[50]);
    int num[50]={0};
    
    num[0]=-1;//num[1]放第一个单词的长度,num[2]放第二个单词的长度,。。。
    for(i=0;i<50;i++){
        if(str[i]==  || str[i]==\0) {num[j]=i-t-1;t=i;j++;
        }
    }
    //找出num[j]最大时的下标m
    m=maxNum(num);

    //计算最长字符串的开始位置
    for(i=1;i<m;i++){
        start += (num[i]+1);
    }

    //输出最长字符串
    for(i=start;i<start+num[m];i++){
        printf("%c",str[i]);
    }
    printf("\n");
}

int maxNum(int num[50]){
    int i,j;
    int max=num[0];//num[0]=-1
    for(i=0; i<50; i++){
        if(max<num[i]){max=num[i]; j=i;}
    }
    return (j);
}

 

以上是关于谭浩强 C程序设计 8.10写一函数,输入一行字符,将此字符串中最长的单词输出。的主要内容,如果未能解决你的问题,请参考以下文章

谭浩强C程序设计习题6-6思考

谭浩强 C程序设计 8.2 求方程 的根,用三个函数分别求当b^2-4ac大于0等于0和小于0时的根,并输出结果。从主函数输入abc的值。

求谭浩强c语言程序设计视频教程打包下载

C语言程序设计,谭浩强老师第三版里面的一个关于浮点型数据的舍入误差问题

谭浩强C程序设计第五版课后答案视频+代码讲解完整版(合集)持续跟新中~~~

谭浩强C程序设计第五版课后答案视频+代码讲解完整版(合集)持续跟新中~~~