news 2026/6/8 22:18:06

最长最短单词 、 单词翻转 和 判断字符串是否为回文

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
最长最短单词 、 单词翻转 和 判断字符串是否为回文

最长最短单词

建立三个字符串;一个表示当前判断的字符串in,另两个表示要输出的最长long最短short单词。

将输入的第一个单词赋值给最长最短单词;后面用while(cin)循环以此判断:将输入赋值给in,然后用“.length()函数”进行判断,如果in大于long,则将其赋值给long,小于short,则将其赋值给short。最后输出long和short。

#include<bits/stdc++.h>
using namespace std;
int main(){
string shortword,longword;
string in;
cin >> in;
shortword = in;
longword = in;
while(cin){
cin >> in;
if(in.length() > longword.length()) longword = in;
if(in.length() < shortword.length()) shortword = in;
}
cout << longword << endl << shortword << endl;
return 0;
}

单词翻转

由于字符串开头和结尾可能有空格,所以我用了getline获取输入,定义两个字符串输入in和输出out,然后遍历in的字符:非空格则添加到out前面,遇到空格则输出out并重置out。由于最后不一定遇到空格,所以在循环外需要在输出一次out。(尽管out可能为空格,但不影响结果)

“out = string(1,c) + out”:将字符添加到out前面,也可以用“.insert(0,1,c)”函数,表示在0位置插入1个字符c。

#include<bits/stdc++.h>
using namespace std;
int main(){
string in;
string out;
getline(cin,in);
for(char &c : in){
if(c == ' '){cout << out << " ";out = "";}//(cout << out << " ")保证单词之间的空格保证与原文一致
else {out = string(1,c) + out;}
}
cout << out << endl;
return 0;
}

判断字符串是否为回文

这个比上一题简单一些,只需存入字符串,将反转后的字符串与原来字符串进行比较即可。

#include<bits/stdc++.h>
using namespace std;
int main(){
string in,out;
cin >> in;
for(char &c : in){out.insert(0,1,c);}//翻转后的字符串给out
if(in == out) cout << "yes" << endl;
else cout << "no" << endl;
return 0;
}

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/8 13:24:46

golang学习笔记:基本语法

一. go程序文件结构 //main.go //包声明 package main//引入包 import "fmt"//程序的入口 func main() {/* 这是我的第一个简单的程序 */fmt.Println("Hello, World!") }二. go的基础语法每一行为一条语句&#xff0c;不需要分号&#xff0c;如果一行要写多…

作者头像 李华
网站建设 2026/6/8 9:48:18

使用YOLOv5进行图像检测的完整配置指南

使用YOLOv5进行图像检测的完整配置指南 在工业视觉系统日益普及的今天&#xff0c;如何快速构建一个稳定、高效的目标检测流程&#xff0c;已成为许多工程师和研究者的首要任务。面对众多算法选择&#xff0c;YOLOv5 凭借其简洁的设计、出色的推理速度与精度平衡&#xff0c;以…

作者头像 李华
网站建设 2026/6/5 11:49:24

Linly-Talker容器构建全指南

Linly-Talker容器构建全指南 在虚拟主播、数字员工和智能客服逐渐走入现实的今天&#xff0c;如何快速搭建一个稳定、高效的数字人对话系统&#xff0c;成为许多开发者面临的核心挑战。环境依赖复杂、模型体积庞大、多模块协同困难——这些问题常常让人望而却步。而 Linly-Tal…

作者头像 李华
网站建设 2026/6/6 8:21:15

如何贡献代码给LobeChat开源项目?参与开发全流程

如何贡献代码给 LobeChat 开源项目&#xff1f;参与开发全流程 在 AI 应用快速普及的今天&#xff0c;越来越多开发者不再满足于“调用模型”&#xff0c;而是希望构建真正可用、好用的智能对话产品。然而从零搭建一个具备现代交互体验的聊天界面——支持多模型切换、插件扩展…

作者头像 李华
网站建设 2026/6/1 8:41:52

LobeChat能否集成CI/CD流水线?DevOps自动化部署示例

LobeChat与CI/CD的无缝融合&#xff1a;构建现代化AI应用交付体系 在今天&#xff0c;一个AI聊天界面的开发早已不再是“写完代码、扔上服务器”那么简单。随着大语言模型&#xff08;LLM&#xff09;能力的爆发式增长&#xff0c;像LobeChat这样的智能对话系统正迅速从个人玩具…

作者头像 李华
网站建设 2026/6/6 3:04:42

模型训练中的对抗训练高级技术探索

模型训练中的对抗训练高级技术探索关键词&#xff1a;模型训练、对抗训练、高级技术、生成对抗网络、鲁棒性摘要&#xff1a;本文聚焦于模型训练中的对抗训练高级技术。首先介绍了对抗训练的背景&#xff0c;包括其目的、适用读者和文档结构等内容。接着详细阐述了对抗训练的核…

作者头像 李华