字符串逆序问题

写一个函数,可以将任意输入的字符串逆序(要可以满足多组输入)

这个题有三个点

1.要读入键盘输入的字符串,所以要用到字符串输入函数

2.可以进行多组输入

3.把输入的n组字符串都逆序

#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
#include<string.h>void reverse(char* str,int len)
{int left = 0;int right = len - 1;while (left < right){char tem = str[left];str[left] = str[right];str[right] = tem;left++;right--;}
}
int main()
{char str[1000];while(scanf(“%s”,str)!=EOF)//可以多组输入{int len = strlen(str);reverse(str, len);printf("%s", str);}return 0;
}

这样可以吗?答案显然不可以

当输入字符串asd asdefg时,打印出来时dsa,这是因为scanf遇到空格就停止!

所以应该用gets

#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
#include<string.h>void reverse(char* str,int len)
{int left = 0;int right = len - 1;while (left < right){char tem = str[left];str[left] = str[right];str[right] = tem;left++;right--;}
}
int main()
{char str[1000];while(gets(str)!=NULL)//可以进行多组输入{int len = strlen(str);reverse(str, len);printf("%s", str);}return 0;
}

scanf与gets

scanf

scanf的返回值是int类型,返回的是正确读入的项的个数,当scanf接收失败时,就返回EOF,这也就是第一个代码进行多组输入的限制条件

比如int ret=scanf("%s %d"arr,&b),ret就等于2(一共两项);

那如何终止多组输入呢?

while(scanf("%s",str) != EOF)

对于这段代码,我们可以多组输入字符串并进行想要的处理,当不想处理时,就要通过键入三次ctrl+z来终止代码,而不是键入EOF!!

gets

char* gets(char*str)

gets是读取一整行的字符串,存储到str所指向的空间),直到遇到换行符,所以它遇到空格也不会停止

它的返回值是字符串首字符的地址即str指针。

当读取失败或未读取时就返回NULL。

它如何终止多组输入?

只需要键入一个ctrl+z即可

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

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

相关文章

SEAM-STRESS

模型 PCM means ‘Pixel Correlation Module’ 辅助信息 作者未提供代码

Redis(二):常见数据类型:String 和 哈希

引言 Redis 提供了 5 种数据结构&#xff0c;理解每种数据结构的特点对于 Redis 开发运维⾮常重要&#xff0c;同时掌握每 种数据结构的常⻅命令&#xff0c;会在使⽤ Redis 的时候做到游刃有余。 Redis 的命令有上百种&#xff0c;我们不可能全部死记硬背下来&#xff0c;但是…

服务器中深度学习环境的配置

安装流程 11.17 日&#xff0c;周末去高校参加学术会议&#xff0c;起因&#xff0c; 由于使用了某高校内的公共有线网络&#xff0c; 远程连接服务器后&#xff0c;黑客利用 ssh 开放的 22 端口&#xff0c; 篡改了主机的配置&#xff0c; 使得只要一连上网络&#xff0c; 服…

心大数据结构题型

选择题 2021 数据处理的单位&#xff1a;数据元素 矩阵压缩存储 2022 ①单链表头插法选择 ②矩阵压缩存储&#xff0c;行优先 ③删除链表节点的时间复杂度 ④稀疏矩阵存储 ⑤平衡二叉树时间复杂度 ⑥栈和队列的出队&#xff0c;问栈的大小至少多少 ⑦拓扑排序 ⑧参考书 360…

扩散模型,快速入门和基于python实现的一个简单例子(复制可直接运行)

提示&#xff1a;内容丰富&#xff0c;收藏本文&#xff0c;以免忘记哦 文章目录 一、扩散模型二、一个简单的迭代式扩散模型的例子温度扩散模型python代码实现差分近似模拟拉普拉斯算子 三、扩散模型和深度学习进行结合简介用python和torch的代码实现 四、扩散模型与生成模型第…

设备状态监测与故障诊断系统在发电厂中的应用

现代科技不断进步&#xff0c;设备状态监测与故障诊断系统在各个行业中扮演着越来越重要的角色。特别是在发电厂这样的关键领域&#xff0c;设备状态监测与故障诊断系统的应用对于确保发电运行的稳定性、安全性和高效性至关重要。本文将探讨设备状态监测与故障诊断系统在发电厂…

回归模型和分类模型

在进行模型构建与分析时&#xff0c;模型评价是非常关键的一步。合适的评价指标可以帮助我们准确地衡量模型的性能&#xff0c;从而进行优化和改进。然而&#xff0c;不同的模型和应用场景需要使用不同的评价指标。下面将分别介绍回归模型与分类模型常用的一些评价指标。 一、…

外汇天眼:你要多久才能成为一个赚钱的交易者?

自古以来&#xff0c;从我们的远祖开始&#xff0c;遇到风险会先跑&#xff0c;看到食物就会先吃&#xff0c;怕被人抢走&#xff0c;这是我们求生本能。 但如果按照我们的天性去做交易&#xff0c;基本上是不容易赚到钱&#xff0c;因为这个心态是祖先留下来的&#xff0c;可…

zblog采集插件-免费的zblog采集插件大全

在当今充斥着信息浪潮的网络世界&#xff0c;许多博主和网站管理员都面临着一个共同而令人头疼的问题——如何轻松而高效地获取大量丰富的内容&#xff0c;以保持他们的平台的活力和吸引力&#xff1f;zblog免费采集插件&#xff0c;这一神奇的工具&#xff0c;正成为许多人解决…

元宇宙3d服装数字化交互展示营销平台大幅提高客户满意度和口碑

web3D云展营销平台是以web3d开发、VR虚拟现实和计算机技术&#xff0c;以展品3D展示、数字人&#xff0c;AI&#xff0c;社交等技术打造&#xff0c;为 Web3D可视化提供了丰富的展示形式和效果&#xff0c;实现将线下展厅、展品在线上1&#xff1a;1复刻呈现的线上场景营销。 w…

03、K-means聚类实现步骤与基于K-means聚类的图像压缩(1)

03、K-means聚类实现步骤与基于K-means聚类的图像压缩&#xff08;1&#xff09; 03、K-means聚类实现步骤与基于K-means聚类的图像压缩&#xff08;1&#xff09; 03、K-means聚类实现步骤与基于K-means聚类的图像压缩&#xff08;2&#xff09; 开始学习机器学习啦&#xf…

企业必看的大数据安全极速传输解决方案

在这个大数据时代&#xff0c;企业在享受大数据带来的便利同时&#xff0c;也面临着巨大的挑战&#xff0c;其中最主要的问题就是数据安全方面和传输方面&#xff0c;为了更好地满足企业大数据传输的需求&#xff0c;小编将深入分析企业对于大数据传输面临的挑战和风险以及大数…