用c语言写一个函数,输入一行字符,将此字符串中最长的单词输出。要有详细解释

如题所述

第1个回答  2012-03-12
#include<stdio.h> //头文件
#include<string.h> //字符串头文件
main() //主函数
{
char a[1024],b[20],d[20]={'a'}; //定义字符串
int i=0,s=0,l; //定义整形变量
gets(a); //输入字符串,将其赋给a数组
for(;i<=strlen(a);i++) //循环
{
for(;s<=20;s++,i++) //循环将a赋给b
{
if(a[i]==32) //将单词分出,也就是以空格为间隔符
{
b[s]='\0'; //将空格替换成数组的结束符
s=0; //初始化s
break; //跳出循环
}
b[s]=a[i]; //将a[i]赋给b[s]
}
if(strlen(b)>=strlen(d)) //判断b,d两个数组的长度谁大谁小
for(l=0;l<=strlen(b);l++) //循环
d[l]=b[l]; //将b[l]赋给d[l]
}
puts(d); //输出d数组
}本回答被提问者采纳
相似回答