当前位置: 首页 > news >正文

c/c++的字符和字符串输入输出

注:

1.下面这些为本人大学四年所用过的处理办法, 至今为止遇到的所有编程题都能够使用。如果需要了解更多关于putchar,cin.get,cin.getline等的请自行搜索。

2.getchar相当于获取一个字符,可以实现单个字符的输入以及通过循环实现多个字符输入,本人常将getchar用在吃掉换行符,比如输入一个整数换行再输入字符的情况。

2.c++包含c,也就是c的代码在c++中能运行使用,所以可以混合使用。

一、字符(单个字符)

#include<stdio.h>
int main(){char c;scanf("%c",&c);printf("%c",c);return 0;
} 
#include<bits/stdc++.h>
using namespace std;
int main(){char c;cin>>c;cout<<c;return 0;
}

二、字符串(多个字符,相当于一维字符数组)

1.直接输入输出

#include<stdio.h>
int main(){char s[5];//使用字符数组scanf("%s",&s);//scanf("%s",s);不加取地址也可以//scanf("%[^\n]",s); 通用//如果s有空格输入,则不能使用scanf("%s",&s);,scanf("%s",&s);遇到空格便会结束printf("%s",s);//如果使用第二种输出有格式错误,尝试循环输出或将char s[5]={0},类似初始化;return 0;
} 

 

#include<stdio.h>
int main(){char s[5];gets(s);puts(s);return 0;
} 

 

#include<bits/stdc++.h>
using namespace std;
int main(){string s;//c++的stringcin>>s;//getline(cin,s);通用//如果s有空格输入,则不能使用cin,cin遇到空格便会结束 cout<<s;return 0;
}

 2.循环输入输出(还有一种是题目给出循环长度,不予赘述)

#include<stdio.h>
int main(){char c;while(scanf("%c",&c)!=EOF){printf("%c",c);}return 0;
} 
#include<bits/stdc++.h>
using namespace std;
int main(){char c;while(cin>>c){cout<<c;}return 0;
}

3.字符串循环处理 (介绍循环结束条件)

#include<stdio.h>
#include<string.h>
//需要加string.h头文件才能使用相关函数
int main(){char c[5]={'1','2','3','4','5'};for(int i=0;i<5;i++)//这里的5不是表面上的字符数组长度,而是里面的实际长度//for(int i=0;i<strlen(c);i++)//for(int i=0;i<sizeof(c);i++)return 0;
} 
#include<bits/stdc++.h>
using namespace std;
int main(){string s="12345";for(int i=0;i<s.size();i++)
// for(int i=0;s[i]!='\0';i++)字符串结尾为'\0'。
// for(int i=0;i<s.length();i++)return 0;
}

三、二维字符数组和字符串数组参考二维整型数组并结合以上知识点

相关文章:

c/c++的字符和字符串输入输出

注&#xff1a; 1.下面这些为本人大学四年所用过的处理办法&#xff0c; 至今为止遇到的所有编程题都能够使用。如果需要了解更多关于putchar,cin.get,cin.getline等的请自行搜索。 2.getchar相当于获取一个字符&#xff0c;可以实现单个字符的输入以及通过循环实现多个字符输…...

学习设计模式的网站

Refactoring and Design Patternshttps://refactoring.guru/...

Hadoop学习笔记(HDP)-Part.08 部署Ambari集群

目录 Part.01 关于HDP Part.02 核心组件原理 Part.03 资源规划 Part.04 基础环境配置 Part.05 Yum源配置 Part.06 安装OracleJDK Part.07 安装MySQL Part.08 部署Ambari集群 Part.09 安装OpenLDAP Part.10 创建集群 Part.11 安装Kerberos Part.12 安装HDFS Part.13 安装Ranger …...

IDEA加载阿里Java规范插件

IDEA加载阿里巴巴Java开发手册插件&#xff0c;在写代码的时候会自动扫描代码规范。 1、打开Settings 2、打开Plugins 3、搜索Alibaba Java Code Guidelines&#xff08;XenoAmess TPM&#xff09;插件&#xff0c;点击Install进行安装&#xff0c;然后重启IDE生效。 4、鼠标右…...

【CSP】202305-1_重复局面Python实现

文章目录 [toc]试题编号试题名称时间限制内存限制题目背景问题描述输入格式输出格式样例输入样例输出样例说明子任务提示Python实现 试题编号 202305-1 试题名称 重复局面 时间限制 1.0s 内存限制 512.0MB 题目背景 国际象棋在对局时&#xff0c;同一局面连续或间断出现3次或3…...

html5各行各业官网模板源码下载(1)

文章目录 1.来源2.源码模板2.1 HTML5白色简洁设计师网站模板2.2 HTML5保护野生动物响应式网站模板 作者&#xff1a;xcLeigh 文章地址&#xff1a;https://blog.csdn.net/weixin_43151418/article/details/134682321 html5各行各业官网模板源码下载&#xff0c;这个主题覆盖各行…...

6 Redis缓存设计与性能优化

缓存穿透 缓存穿透是指查询一个根本不存在的数据&#xff0c; 缓存层和存储层都不会命中&#xff0c; 通常出于容错的考虑&#xff0c; 如果从存储层查不到数据则不写入缓存层。缓存穿透将导致不存在的数据每次请求都要到存储层去查询&#xff0c; 失去了缓存保护后端存储的意义…...

SpringCloud常见问题

1、什么是Spring Cloud&#xff1f; Spring Cloud是一款基于Spring Boot框架开发的微服务框架&#xff0c;它为开发人员提供了一系列的组件和工具&#xff0c;可以帮助开发人员快速构建和部署微服务&#xff0c;提高开发效率和项目可维护性。Spring Cloud提供了包括服务注册与…...

实战演练 | 在 Navicat 中格式化日期和时间

Navicat 支持团队收到来自用户常问的一个问题是&#xff0c;如何将网格和表单视图中的日期和时间进行格式化。其实这个很简单。今天&#xff0c;我们将介绍在 Navicat Premium 中进行全局修改日期和时间格式的步骤。 如果你想边学边用&#xff0c;欢迎点击 这里 下载免费全功能…...

mysql面试题分享带答案

数据库索引的原理&#xff0c;为什么要用B树&#xff0c;为什么不用二叉树&#xff1f; 可以从几个维度去看这个问题&#xff0c;查询是否够快&#xff0c;效率是否稳定&#xff0c;存储数据多少&#xff0c;以及查找磁盘次数&#xff0c;为什么不是二叉树&#xff0c;为什么不…...

利用 Python进行数据分析实验(一)

一、实验目的 使用Python解决简单问题 二、实验要求 自主编写并运行代码&#xff0c;按照模板要求撰写实验报告 三、实验步骤 本次实验共有5题&#xff1a; 有四个数字&#xff1a;1、2、3、4&#xff0c;能组成多少个互不相同且无重复数字的三位数&#xff1f;各是多少&…...

Jupyter Notebook工具

Jupyter Notebook 是一个交互式的笔记本环境&#xff0c;允许用户以网页形式编写和分享代码、文本、图像以及其它多媒体内容。它支持超过 40 种编程语言&#xff0c;最常用的是 Python。 以下是 Jupyter Notebook 工具的一些特点和用法&#xff1a; 1. 特点&#xff1a; 交互式…...

c语言上机小练(有点难)

1.题目 用指向数组的指针编程实现&#xff1a;输入一个字符串&#xff0c;内有数字和非数字符号&#xff0c;如&#xff1a;a123x456&#xff08;此处一个空格&#xff09;17960?302tab5876。将其中连续的数字作为一个十进制整数&#xff0c;依次存放到一个数组a中。例如&…...

<JavaEE> 什么是线程安全?产生线程不安全的原因和处理方式

目录 一、线程安全的概念 二、线程不安全经典示例 三、线程不安全的原因和处理方式 3.1 线程的随机调度和抢占式执行 3.2 修改共享数据 3.3 关键代码或指令不是“原子”的 3.4 内存可见性和指令重排序 四、Java标准库自带的线程安全类 一、线程安全的概念 线程安全是指…...

Kotlin 中的 also 和 run:选择正确的作用域函数

在 Kotlin 中&#xff0c;also 和 run 是两个十分有用的作用域函数。 虽然它们在功能上相似&#xff0c;但各自有独特的用途和适用场景。 一、分析&#xff1a; also&#xff1a;在对象的上下文中执行给定的代码块&#xff0c;并返回对象本身。它的参数是一个接收对象并返回…...

ZKP Understanding Nova (1): MinRoot Example

Understanding Nova Kothapalli, Abhiram, Srinath Setty, and Ioanna Tzialla. “Nova: Recursive zero-knowledge arguments from folding schemes.” Annual International Cryptology Conference. Cham: Springer Nature Switzerland, 2022. Nova: Paper Code 1. Unders…...

0基础学java-day14

一、集合 前面我们保存多个数据使用的是数组&#xff0c;那么数组有不足的地方&#xff0c;我们分析一下 1.数组 2 集合 数据类型也可以不一样 3.集合的框架体系 Java 的集合类很多&#xff0c;主要分为两大类&#xff0c;如图 &#xff1a;[背下来] package com.hspedu.c…...

创建conan包-工具链

创建conan包-工具链 1 Toolchains 本文是基于对conan官方文档Toolchains翻译而来&#xff0c; 更详细的信息可以去查阅conan官方文档。 1 Toolchains Toolchains are the new way to integrate with build systems in Conan. Recipes can define a generate() method that wi…...

IntelliJ IDE 插件开发 | (二)UI 界面与数据持久化

系列文章 IntelliJ IDE 插件开发 |&#xff08;一&#xff09;快速入门 前言 在上一篇文章中介绍了在IDEA下开发、运行和安装插件的基本步骤&#xff0c;因此创建项目等基础步骤不再赘述&#xff0c;本文则开始介绍如何进行 UI 界面的开发以及相关数据的持久化存储&#xff…...

使用vue UI安装路由插件

1.使用vue创建项目 vue create vue-appvue ui 2.使用vue ui界面创建管理项目 终端页面输入&#xff1a;vue ui 创建项目 安装完成。可以直接在ui界面运行&#xff0c;也可以在编辑器中使用命令运行 安装路由&#xff0c;安装状态 选择插件 - 添加vue-router、添加vuex 安装…...

MoneyPrinterPlus智能视频创作工具实战指南:从零到批量生产的完整流程

MoneyPrinterPlus智能视频创作工具实战指南&#xff1a;从零到批量生产的完整流程 【免费下载链接】MoneyPrinterPlus AI一键批量生成各类短视频,自动批量混剪短视频,自动把视频发布到抖音,快手,小红书,视频号上,赚钱从来没有这么容易过! 支持本地语音模型chatTTS,fasterwhispe…...

别再手动复制了!用Python+Wind API批量下载股票、期货、债券代码的完整脚本

金融数据自动化采集实战&#xff1a;PythonWind API全市场证券代码批量获取指南 金融数据是量化研究和投资决策的基础&#xff0c;但手动从Wind客户端导出各类证券代码不仅耗时耗力&#xff0c;还容易出错。本文将手把手教你用Python调用Wind API实现股票、期货、债券、期权等全…...

别再死记硬背One-Hot了!用Python从零实现一个Word2Vec词嵌入模型(附完整代码)

从零构建Word2Vec&#xff1a;用Python实现词嵌入的实战指南 词嵌入技术早已成为自然语言处理的基石&#xff0c;但大多数教程要么停留在理论层面&#xff0c;要么直接调用现成的库函数。本文将带你用纯Python和NumPy从零实现一个Word2Vec模型&#xff0c;彻底掌握词向量生成的…...

【全新升级】PC 端 Open Claw v 2.7.5 零基础搭建步骤

&#x1f4cc; 前言 开源圈热门的「数字员工」OpenClaw&#xff08;昵称小龙虾&#xff09;&#xff0c;GitHub 星标突破 28 万&#xff0c;凭借本地运行 零代码操作 自动干活的核心优势广受关注&#xff01;很多人误以为它是普通聊天 AI&#xff0c;实则是能真正操控电脑的…...

别再被格式卡论文了!Paperxie 格式排版功能,一键搞定从本科到博士的规范难题

paperxie-免费查重复率aigc检测/开题报告/毕业论文/智能排版/文献综述/AI PPThttps://www.paperxie.cn/format/typesettinghttps://www.paperxie.cn/format/typesetting 论文季里&#xff0c;有多少人的崩溃&#xff0c;不是因为写不出内容&#xff0c;而是死在了格式上&#x…...

基于MCP协议与多模态大模型的图像结构化信息提取实战指南

1. 项目概述&#xff1a;从图像中“榨取”结构化信息的利器最近在折腾一些自动化流程&#xff0c;经常遇到一个头疼的问题&#xff1a;我需要从一堆截图、产品图或者设计稿里&#xff0c;把里面的文字、表格、甚至是图表数据给“抠”出来&#xff0c;变成机器能直接处理的文本或…...

找工作简历模板

大三想找工作的时候第一时间是写简历&#xff0c;然后发现好多软件和网站的简历模板都需要会员或者模板费&#xff0c;于是自己写了个markdown模板 下面这个是示例 <div align"center"> <!-- 右上角照片 --> # Name <div style"font-size: 14px…...

信号处理避坑指南:ESPRIT、Root-Music等DOA估计算法,到底该怎么选?

DOA估计算法选型实战&#xff1a;ESPRIT与MUSIC家族的性能对决 当八通道均匀线阵捕捉到两个间隔仅5的远场信号时&#xff0c;算法A在信噪比15dB时成功分离目标&#xff0c;而算法B直到25dB才能勉强分辨——这种真实场景中的性能差异&#xff0c;正是工程师选择DOA&#xff08;波…...

NotebookLM问答功能终极评估报告(基于217份真实研究笔记测试):准确率、溯源性、逻辑连贯性三维评分,这份清单决定你是否该立刻升级

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;NotebookLM问答功能终极评估报告概览 NotebookLM 是 Google 推出的基于用户上传文档构建个性化知识代理的 AI 工具&#xff0c;其核心问答能力依赖于对私有资料的深度语义理解与上下文精准锚定。本章聚…...

中华民族站起来了,《AI驱动上下五千年:从结绳记事到智能纪元》第三章:周礼分封——面向服务的架构(SOA)首次实践

第三章&#xff1a;周礼分封——面向服务的架构&#xff08;SOA&#xff09;首次实践 1.历史现场&#xff1a;周公的架构革命 时间&#xff1a;公元前1046年&#xff0c;周朝建立之初地点&#xff1a;镐京&#xff08;今西安&#xff09;明堂人物&#xff1a;周公旦、各诸侯国君…...