统计单词的平均长度

试题描述

   输入若干个单词,输出它们的平均长度,保留两位小数。单词只包含大写字母和小写字母,单词前后都可能有一个或者多个空格隔开。

输入

   输入若干个单词,单词前后都可能有一个或者多个空格隔开。

输出

   输出平均长度,小数点后必须保留2位有效数字(四舍五入),不足补零。

输入示例

   Hello world

输出示例

   5.00

数据范围

   对于100%的数据,输入字符串的长度 <= 1000

参考代码

#include<stdio.h>
#include<string.h>
int main()
{
	char str[1001];
	float sum=0;
	int num=0,i;
	int flag=1,count=0;
	int len,onlyblank=1;
	gets(str);
	len=strlen(str);
	if(len==0)count=1;
	for(i=0;i<len;i++)
	{
		if(str[i]!=' ')
		{
			onlyblank=0;
			break;
		}
	}
	if(onlyblank) 
		{printf("0.00");return 0;}
	for(i=0;i<len;i++)
	{
		if(str[i]!=' '&&flag) count++;
		if(i==len-1&&str[i]!=' ')
		{
			num++;
			sum+=num;
			num=0;
		}
		else if(str[i]==' ')
		{
			flag=1;
			sum+=num;
			num=0;
		}
		else
		{
			flag=0;
			num++;
		}
	}
	printf("%.2f",sum/count);
	return 0;
}Code language: PHP (php)

留下评论