单词长度C【2018.3.16/1】

本文介绍了一个简单的C语言程序,该程序能读取一行文本并输出每个单词的长度,适用于包括特殊符号在内的各种单词形式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

单词长度:


你的程序要读入一行文本,其中以空格分隔为若干个单词,以‘.’结束。你要输出这行文本中每个单词的长度。这里的单词与语言无关,可以包括各种符号,比如“it's”算一个单词,长度为4。注意,行中可能出现连续的空格。


输入格式:

输入在一行中给出一行文本,以‘.’结束,结尾的句号不能计算在最后一个单词的长度内。


输出格式:

在一行中输出这行文本对应的单词的长度,每个长度之间以空格隔开,行末没有最后的空格。


输入样例:

It's great to see you here.


输出样例:

4 5 2 3 3 4


输出:

#include<stdio.h>
int main()
{
	char a;
	int len=0,sw=0,sum=0;//len记录每个单词包含几个字母 
	while((a=getchar())!='.'){
		if(a!=' '){
			len++;
			sw=0;		//sw是字母开关,sum是空格开关,包含操作系统的互锁理论 
			sum=0;		//只有前面有字母以及有一个空格输入的情况下才会输出字母数目 
		}else {
//			sw=1;
			sum++;
		}
		if(sw==0&&sum==1&&len!=0){
			printf("%d ",len);
			len=0;
		}else {
			continue;
		}
	}
	if(len>0) printf("%d",len);
	return 0;
 } 

总结:

1、掌握两个stdio.h类的函数:getchar(),putchar().都是对一个单词内单个字母的操作,进行字母级别的操作时比较适用。

2、if函数的条件判断里面的戏很多,可以进行更深层次的挖掘。

3、这次受到他人的作品启发,希望下次遇见类似的题目能够自己独立完成。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值