C语言连续多个空格合并一个,C语言合并连续空格

一开始自己写的:

a:

#include

main()

{

int c;

int state=0;

while (( c=getchar()) != EOF) {

if (c==' '){

state=1;

continue;

}

if (state){

state=0;

putchar(' ');

putchar(c);

}else

putchar(c);

}

}

网上搜的:

b:

#include

#define NONBLANK 'a'

void main()

{

int c , lastc;

lastc = NONBLANK;

while((c = getchar()) != EOF)

{

if(c != ' ')

putchar(c);

else if(lastc != ' ')

putchar(c);

lastc = c;

}

}

c:

#include

int main(void)

{

int c;

int inspace;

inspace = 0;

while((c = getchar()) != EOF)

{

if(c == ' ')

{

if(inspace == 0)

{

inspace = 1;

putchar(c);

}

}

if(c != ' ')

{

inspace = 0;

putchar(c);

}

}

return 0;

}

看起来b方法比较酷 .

方法b中的这句:

else if(lastc != ' ')

putchar(c); 将putchar的参数改为'\n',程序的功能就变为以每行一个单词的形式打印输入。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/370857.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Skywalking 中 Agent 自动同步配置源码解析

文章目录 前言正文实现架构实现模型OAP 同步 ApolloConfigWatcherRegisterConfigChangeWatcher Agent 侧 前言 本文代码 OAP 基于 v9.7,Java Agent 基于 v9.1,配置中心使用 apollo。 看本文需要配合代码“食用”。 正文 Skywalking 中就使用这种模型…

华为5720设置静态路由不通_【干货分享】交换机与路由器在环路中的处理机制了解一下!...

点击蓝字关注我们-今天小盟带大家来讨论一下交换机与路由器在环路中的处理机制-01基础配置1---如图配置路由器各接口地址,AR-2为PC-1的网关路由器2---AR-1配置静态默认路由,下一跳地址指向AR-2;[AR-1]ip route-static 0.0.0.0 0 12.1.1.2AR-2…

IPC 进程间通信方式——信号量

信号量 本质上是共享资源的数目,用来控制对共享资源的访问。用于进程间的互斥和同步每种共享资源对应一个信号量,为了便于大量共享资源的操作引入了信号量集,可对多对信号量一次性操作。对信号量集中所有的操作可以要求全部成功,也…

css选择器的优先级

选择器的优先级表述为4个部分,用0,0,0,0表示。 !important--1,0,0,0行内样式ID选择器--0,1,0,0类选择器(例如,.example)、属性选择器(例如, [type"radio"])或伪类(例如, :hover)--0,0,1,0元素(例…

VisualVM介绍使用

1 打开VisualVM(这个工具放在JDK安装目录的bin目录下,双击jvisualvm.exe即可打开),如下图所示 以VisualVM自身为例,VisualVM本身也是一个java程序,当然也而已用VisualVM来分析 2 概述页面主要显示程序…

c语言奇葩错误,6个奇葩的(hello,world)C语言版(转)

//下面的所有程序都可以在GCC下编译通过,只有最后一个需要动用C的编译器用才能编译通过。//程序功能输出 Hello,world!01.c#define _________ }#define ________ putchar#define _______ main#define _(a) ________(a);#define ______ _______(){#define __ _____…

Java功能的适用性

Java语言和标准库功能强大,但功能强大, 责任重大 。 一方面看到很多用户代码滥用或滥用稀有的Java功能,另一方面却完全忘记了大多数基本功能之后,我决定撰写此摘要。 这不是每个Java开发人员都应该探索,了解和使用的要…

台达b3伺服modbus通讯_【数控系统】台达伺服压机控制灵活 精准压合满足各种工序需求...

引言压机是一种利用压力改变工件形状的机械设备。随着制造业少量多样与客制化的日趋发展,压机的的优势逐渐显现,在汽车、五金与电子制造等产业中的应用不断增多。传统压机在使用操作上耗费人力并需要诸多压机元件才能完整运作,维修成本高&…

Binary Agents(二进制值转换字符串)

题目&#xff1a; 传入二进制字符串&#xff0c;翻译成英语句子并返回。 二进制字符串是以空格分隔的。 代码&#xff1a; 1 function binaryAgent(str) {2 var arr str.split( );3 for (var i 0; i < arr.length; i) {4 arr.splice(i,1,String.fromCharCode(BtoD…

我对CSS选择器的认识

我对CSS选择器的认识 一、简述   CSS选择器是对HTML元素进行选择的筛选条件&#xff0c;大概可以分为两类&#xff1a; 特征选择器——根据元素自身所具有的某种特征进行筛选&#xff0c;比如名称、ID、属性等&#xff1b;关系选择器——根据元素与其他元素的关系进行筛选&…

【USACO2006 Mar】滑雪缆车 skilift

【USACO2006 Mar】 滑雪缆车 skilift Time Limit 1000 msMemory Limit 131072 KBytes Description 科罗拉多州的罗恩打算为奶牛建造一个滑雪场&#xff0c;为此要在山上规划一条缆车线路。 整座山可以用一条折线来描述&#xff0c;该折线有N个拐点&#xff0c;起点是1&#xff…

yolov4Linux,基于Darknet的YOLOv4目标检测

目录一、Windows环境下的YOLOv4目标检测1、环境配置环境准备&#xff1a;Win10、CUDA10.1、cuDNN7.65、Visual Studio 2019、OpenCV 3.4(1)Visual Studio2019企业版安装(3)下载并安装CUDA10.1&#xff0c;下载安装cuDNN7.65对于cudnn直接将其解开压缩包&#xff0c;然后需要将b…

二元置信椭圆r语言_医学统计与R语言:圆形树状图(circular dendrogram)

微信公众号&#xff1a;医学统计与R语言如果你觉得对你有帮助&#xff0c;欢迎转发输入1&#xff1a; "ggraph")结果1&#xff1a; name 输入2&#xff1a; <- graph_from_data_frame(myedges1, verticesmyvertices,directed T)ggraph(mygraph, layout dend…

Java:检查器框架

我在JavaOne 2012上 了解的有趣的工具之一是Checker Framework 。 Checker Framework的网页之一 指出 &#xff0c;Checker Framework“增强了Java的类型系统&#xff0c;使其更强大&#xff0c;更有用”&#xff0c;从而使软件开发人员“能够检测并防止Java程序中的错误”。 查…

南岸焊接机器人厂_造船三部高效焊接工艺技术年鉴

为了提升公司高效焊自动化率&#xff0c;实现降本增效目标&#xff0c;造船事业三部积极响应公司领导号召&#xff0c;充分挖掘自身资源&#xff0c;2020年&#xff0c;在高效焊接技术、设备开发研究等方面&#xff0c;不断创新、敢于突破&#xff0c;获取了多项焊接新技术、新…

软工Hello World!团队第二周博客汇总

2017.10.20-2017.10.26 Scrum会议&#xff1a; 第一天&#xff1a;http://www.cnblogs.com/liusx0303/p/7704482.html 第二天&#xff1a;http://www.cnblogs.com/Mingezi/p/7709472.html 第三天&#xff1a;http://www.cnblogs.com/lynlyn/p/7717275.html 第四天&#xff1a;h…

什么是css sprites,如何使用?

css sprites&#xff1a;精灵图&#xff08;雪碧图&#xff09;&#xff1a;把一堆小图片整合在一张大图上&#xff0c;通过背景图片相关设置&#xff08;背景图片、背景图是否重复、背景图定位&#xff09;&#xff0c;显示图片&#xff0c;减轻服务器对图片的请求数量 优点&…

线性回归csv数据集_测试数据科学家线性回归的30个问题

你的目标是数据科学家吗&#xff1f;那你对线性回归了解有多深入呢&#xff0c;下面的30道题&#xff0c;可以帮助你或者测试别人是否真的达到的数据科学家的水平&#xff0c;关注回复&#xff0c;答案在评论区&#xff1a;1)是非题&#xff1a;线性回归是一种受监督的机器学习…

linux调试crontab,linux - crontab 的调试,启动thin服务器

linux - crontab 的调试&#xff0c;启动thin服务器2018-11-18 17:10访问量: 1059分类&#xff1a;技术参考&#xff1a;https://askubuntu.com/questions/56683/where-is-the-cron-crontab-log日志默认位置在 /var/log/syslog 中。 grep CRON 。 如果没有安装MTA的话(例如 mai…

番石榴前提条件课

编写过很多Java文章的人可能都编写了以条件为开头的方法&#xff0c;这些条件可以在继续进行该方法的其余实现之前&#xff0c;先验证提供的参数或要操作的对象的状态。 这些会增加方法的冗长性&#xff0c;有时&#xff0c;尤其是在有多个检查的情况下&#xff0c;几乎会淹没该…