大家看一下这个程序,哪出错了?
作用是输出一个字符串中最长的单词。让p始终存放当前最长单词的长度,q存放当前单词的长度
比如:输入you are great! 则应输出great!
#include<stdio.h>
#include<string.h>
void main()
{
void word(char a[20]);
char str[20];
printf("input a string:\n");
gets(str);
word(str);
//getch();
}
void word(char a[20])
{
int i,p=0,q=0,k;
for(i=0;a[i]!=' ';i++)
++p;
for(i=0;a[i]!='\0';i++)
{
if(a[i]==' ')
{
if(q>=p)
{
p=q;
k=i-q;
}
q=0;
}
else
++q;
}
for(i=0;i<p;i++)
printf("%c",a[k++]);
}