无意中翻到一篇自己曾在06年讲课是临时写的一个程序,在一个字符串中寻找长度最长的单词。因为是一边讲一边写的,所以显得比较原始,^_^见笑了(那年是在TC里写的,现在加上注释)
#include<stdio.h>
#include<string.h>
main()
{
char a[1000],*p,*q,t[1000]="";
/* 原字符串 扫描单词 递减字符串 存放单词串,初始化空*/
int i;/*单词长度计数器*/
gets(a);
q=a;
while(*q!='\0')
{
i=0;
p=q;
while((*p!=' ')&&(*p!='\0'))/*结尾处非空格*/
{
p++;
i++;
}
if(i>strlen(t)) strncpy(t,q,i);/*q前i个字符是一个单词*/
q=q+i+1;/*去掉前面一个单词及空格*/
}
puts(t);
}
#include<string.h>
main()
{
char a[1000],*p,*q,t[1000]="";
/* 原字符串 扫描单词 递减字符串 存放单词串,初始化空*/
int i;/*单词长度计数器*/
gets(a);
q=a;
while(*q!='\0')
{
i=0;
p=q;
while((*p!=' ')&&(*p!='\0'))/*结尾处非空格*/
{
p++;
i++;
}
if(i>strlen(t)) strncpy(t,q,i);/*q前i个字符是一个单词*/
q=q+i+1;/*去掉前面一个单词及空格*/
}
puts(t);
}
转载于:https://blog.51cto.com/wangwenlong/76421