输出最长的单词

字符串
9

【描述】

一个以'.'结尾的简单英文句子,单词之间用空格分隔,没有缩写形式和其它特殊形式。

【输入】

一个以'.'结尾的简单英文句子(长度不超过500),单词之间用空格分隔,没有缩写形式和其它特殊形式。

【输出】

该句子中最长的单词。如果多于一个,则输出第一个。

【输入示例】

I am a student of Hangzhou Normal University.

【输出示例】

University





#include
#include

int main(){
	char a[500];
	char *b[100],*max;
	int l,len,i=1;
	gets(a);
	l=strlen(a);
	a[l-1]='\0'; //去掉最后的句号,所以把最后一个“.”变成\0  
	l=strlen(b[i++]=strtok(a," "));//第一个单词长度 
	//b[i]代表第i个单词字符串!
	while(1){
		b[i]=strtok(NULL," ");
		if(b[i]==NULL)
			break;
		len=strlen(b[i]);
		if(len>l)
			l=len,max=b[i];
	}
	printf("%s\n",max); //不需要用*max 
}



也不一定要用数组保存字符串地址,单独的char *b 也可以!


#include
#include

int main(){
	char a[500];
	char *b,*max;
	int l,len,i=1;
	gets(a);
	l=strlen(a);
	a[l-1]='\0'; //去掉最后的句号,所以把最后一个“.”变成\0  
	l=strlen(b=strtok(a," "));//第一个单词长度 
	while(1){
		b=strtok(NULL," ");
		if(b==NULL)
			break;
		len=strlen(b);
		if(len>l)
			l=len,max=b;
	}
	printf("%s\n",max); 
}




你可能感兴趣的:(C习题集)