请高手帮帮忙。。看看我编的哪里出错了???谢谢
题目: 用一个函数来实现在一行字符串中找出最长的单词的功能。此行字符串从主函数传递给该函数。(帮我看看我编的是哪里错??不要新编的。。就看看我哪里错了???谢谢)
#include<stdio.h>
int a=0;
void main()
{
void output(char m[80]);
char letter[80];
int i,k[80],r[80],q;
printf("please input letters:");
gets(letter);
k[80]=beginning(letter);
r[80]=length(k);
for(i=0;i<80;i++)
{
q=r[i];
if(r[i+1]>r[i])
{
q=r[i+1];
a++;
}
}
printf("length=%d",q);
output(letter);
}
void output(char m[80])
{
int i,j=0,k[80],b;
for(i=0;i<80;i++)
{
if((m[i]>='a'&&m[i]<='z')||(m[i]>='A'&&m[i]<='Z'))
{
for(;j<80;)
{
k[j]=i;
j++; break;
}
}
}
b=k[2*a-1];
for(i=b;i<80;i++)
{
if((m[i]>='a'&&m[i]<='z')||(m[i]>='A'&&m[i]<='Z'))
printf("%c",m[i]);
else break;
}
}
int beginning(int m[80])
{
int i,j=0,k[80];
for(i=0;i<80;i++)
{
if((m[i]>='a'&&m[i]<='z')||(m[i]>='A'&&m[i]<='Z'))
{
for(;j<80;)
{
k[j]=i;
j++; break;
}
}
}
return(k);
}
int length(int x[80])
{
int i,j=0,r[80];
for(i=0;i<80;i++)
{
r[i]=x[j+1]-x[j];
j++;
}
return(r);
}
[ 本帖最后由 karenzzq 于 2011-8-25 18:07 编辑 ]