两种方法

  • 方法一
  • 方法二
  • 2022/11/16 补充

方法一

使用stdio函数库提供的char函数,这里我们在MSDN离线版上学习一下其用法

可以看到,gets()用于从标准输入流读入一个整行(以’\n’或EOF)结束,写入ptr指向的字符数组,并返回这个指针;出错或遇到文件结束时则返回NULL。行末的’\n’从流中取出,但不写入数组。gets()不检查被写入的数组大小。

所以我们可以很容易写出如下代码:

#include<stdio.h>
int main()
{char str[25] = { 0 };gets(str);printf("%s\n", str);return 0;
}

实现后:

方法二

这里使用一个scanf函数提供的“%[]”格式来输入,这个格式可以让我们进行多字符的输入,同时决定输入结束的字符,只需要使用**^+我们需要停止的字符**下面为大家实际操作一波:

#include<stdio.h>
int main()
{char str[25] = { 0 };scanf("%[^\n]", str);printf("%s\n", str);return 0;
}

实现后:

我们甚至可以凭借%[ ^EOF ]来控制字符串的持续输入

如果对你有帮助的话,动动小手点个赞可以嘛,谢过各位啦~


2022/11/16 补充

我前天面试栽在这儿了,一个acm模式的题目,接口我写的出来,但是却没法输入一个带空格的字符串,实在荒唐(我巨想去的公司和部门);现在做c++的补充并整体做常规总结,希望兄弟们别犯和我一样的蠢错,这些简单的问题实在不应该出错,并且作为一个C程序员,这些是非常基本必须掌握的。

  • C语言

可以使用gets,但是gets不限制写入大小,非常不安全,不使用

  1. sranf+正则格式 scanf(“%[^\n]”,str)

  2. fgets:fgets(str,sizeof(str),stdin)

  • C++
  1. 字符串string类型对象,使用getline(cin,string)

  2. 字符数组类型,使用cin.get(str,str_size)

C语言如何输入带空格的字符串?相关推荐

  1. c语言输入带空格的数字组,【C语言】输入带空格的数字字符串

    [C语言]输入带空格的数字字符串 大家好,我是Lukas,是一名CS专业的学生,学习C语言的时间也不算短了,感觉CSDN网站帮助了我很多,帮我找到了很多解决问题的思路,但一些大神的代码和算法经常会让人 ...

  2. c语言中字符串中输入空格,C语言输入带空格的字符串

    因为: scanf("%s",str); 遇到空格就停止接收后面的字符. scanf("%s", str, 10); 不能接收带空格的字符串输入,虽然它的指定长 ...

  3. C/C++中输入带空格的字符串 string 转 char*

    在C和C++中,用普通的方法输入带空格的字符串时,得不到后续的数据.想要在字符串中包含空格可以使用以下方法: (1)使用正则表达式 scanf("%[^\n]]",str); // ...

  4. C++中判断在字符串中是否存在空格 以及 如何输入带空格的字符串

    1:引言: 输入带空格的字符串 需要用到 getline(cin,str);具体在代码中看 2:上码 #include<bits/stdc++.h> using namespace std ...

  5. 洛谷 P1598 垂直柱状图(输入带空格的字符串)

    P1598 垂直柱状图 菜鸟生成记(25) 这个题有点水,考察字符串的基本功(哎!就喜欢这考基本功的水题) 这一题涉及到输入带空格的字符串输入和格式化输出; 唉!只从gets死了(C11删除gets, ...

  6. Scanner输入带空格的字符串

    Scanner是一个扫描器,我们录取到键盘的数据,先存到缓存区等待读取,它判断读取结束的标示是  空白符:比如空格,回车,tab 等等. next()方法读取到空白符就结束: nextLine()读取 ...

  7. java控制台输入带空格的字符串

                                                   java控制台输入带空格的字符串 Scanner sc = new Scanner(System.in); ...

  8. 如何输入带空格的字符串

    转载自:https://www.cnblogs.com/houchen/p/10356396.html 问题一:带空格的字符串输入(c++)       对于string类       getline ...

  9. c++如何输入带空格的字符串

    1.scanf函数(包含头文件#include <stdio.h>) scanf函数一般格式为scanf("%s",st),但scanf默认回车和空格是输入不同组之间的 ...

最新文章

  1. 判断h5是不是在小程序中
  2. golang mysql自动重连_rabbitmq消费者插入mysql数据并实现断线自动重连
  3. ZF2系列 – Zend Framework 2 MVC實作 (Part 3)
  4. 前端学习(1961)vue之电商管理系统电商系统之调用api获取数据
  5. oracle 序列验证脚本,oracle 生成序列脚本
  6. 【收藏】史上最全推荐系统传统算法合集
  7. 腾讯225页报告:AI正取代互联网成为新引擎,马化腾提七大关键词
  8. 奶块1月25日服务器维护时间,奶块1月25更新公告 | 手游网游页游攻略大全
  9. 关于笔记本品牌的笑话!
  10. [转载] java构造函数初始化与执行顺序问题
  11. 可实现的python拟牛顿法的DFP算法
  12. 计算机会计应用实训,大学excel在会计中的应用的实训心得
  13. DDCTFMulTzor-xoortol的使用
  14. linux 怎么进终端,进入Linux终端界面的方法汇总
  15. Capture CIS配置Mysql数据库连接
  16. 小学英语之拯救小学生 V1.0 名词单复数变化规则
  17. 山东农业大学计算机考研资料汇总
  18. win32 打印机任务管理的 node 模块 (3)详解Win32 Spooler API 获取打印机列表及状态
  19. 百度地图爬虫——获取某区域所有中学附近的网吧数据
  20. U号租号平台技术服务支持

热门文章

  1. 怎么用手机修改服务器的网关,网关,详细教您手机怎么改网关和IP
  2. uva-10115 - Automatic Editing
  3. AttributeError: 'NoneType' object has no attribute 'sc' 解决方法!
  4. 3D音频理论研究(二)---3D全介绍(转)
  5. C语言课程设计题目汇总
  6. 这款神器你不学就要落后了!
  7. 【论文阅读】Misshapen Pelvis Landmark Detection WithLocal-Global Feature Learning for DiagnosingDevelop
  8. 国密算法Go语言实现(详解)(九) ——SM2(椭圆曲线公钥密码算法)
  9. 平稳与非平稳随机信号的理解
  10. 计划的主体部分应有哪些内容_计划的正文主体一般有哪三个部分构成