目录

一、前言

二、函数  gets()、scanf() 深度解析

(1)头文件

(2)scanf()函数

(3)gets()函数

重点:(4) gets(a); 与 scanf("%s",a); 的别区

(5) puts(a)  与  priintf("%s",a);  的区别

三、共勉


一、前言

在写这篇文章之前,我对这些基础的函数总是持有一种似懂非懂的感觉没有太在意,直到我在刷题中遇到了满屏的烫烫烫烫烫烫烫烫烫烫烫烫趟或者就是输入字符总是不符合题目格式要求,至此我专门看了一些大佬的文章,做出了我得理解。

二、函数  gets()、scanf() 深度解析

(1)头文件

    gets() 、scanf() 输入函数的头文件都是 #include <stdio.h>

    (2)scanf()函数

scanf()函数是输入函数,可以进行整数、浮点数、字符、整数数组、字符串数组的输入

   1. 在整数 int 中用  %d 进行输入 scanf("%d",  &x);

    2.在浮点数 float 中用 %f 进行输入 scanf("%f",&x);

                       double中用 %lf 进行输入 scanf("%lf",&x);

    3.在字符char中用 %c进行输入scanf("%c",&x);

    3.在整型数组中用 %d 进行输入 scanf("%d",&a);  注意:数组名必须带取地址符&

    注意:此时&a 传输的是首地址

    4.在字符串数组中用 %s 进行输入 scnaf("%s",a);  注意:数组名不能带取地址符&

(3)gets()函数

gets()是输入函数,专门对字符串数组进行输入

    gets(a);   a 是数组名

    重点:(4) gets(a); 与 scanf("%s",a); 的别区

gets(a) 与 scanf("%s",a)相似,但不完全相同。

scanf("%s",a) 函数输入字符串时存在一个问题,就是如果输入了空格会认为字符串结束,空格后的字符将作为下一个输入项处理。

    gets(a)函数将接收输入的整个字符串直到遇到换行为止。

 代码举例:scanf("%s",a);

#include <stdio.h>
#include <string.h>
int main()
{char a[10] = { 0 };scanf("%s", a);   //1234printf("%s", a);  //1234return 0;
}
#include <stdio.h>
#include <string.h>
int main()
{char a[10] = { 0 };scanf("%s", a);   // 1 2 3 4printf("%s", a);  // 1return 0;
}

代码举例:gets(a);

#include <stdio.h>
#include <string.h>
int main()
{char a[10] = { 0 };gets(a);        //1234printf("%s", a);  //1234return 0;
}
#include <stdio.h>
#include <string.h>
int main()
{char a[10] = { 0 };gets(a);        //1 2 3 4printf("%s", a);  //1 2 3 4return 0;
}

(5) puts(a)  与  priintf("%s",a);  的区别

puts 和 printf的用法一样,puts()函数的作用与语句“printf("%s\n",a);的作用相同。

    注意:puts在输出字符串后会自动输出一个回车符。

三、共勉

 以下就是我对输入函数的理解,如果有不懂和发现问题的小伙伴,请在评论区说出来哦,同时我还会继续更新对getchar()函数的理解,请持续关注我哦!!!!!!!!

C语言--gets、puts、scanf、printf函数详细用法与区别(小白也能看懂,看不懂私信骂我)相关推荐

  1. C语言 printf源码详解,从头一起学c语言(六)————printf函数的详解

    这段时间很忙,更新的晚了,见谅.当然同样有今天我们的主角十分复杂,之前介绍了这个手记并非是面对新手的,而是我的复习手记.所以我们会讲头文件,或许有错误,如果有大手子看到,希望能够提出我的错误. pri ...

  2. c语言设置制表符参数,printf()函数的参数和制表符

    · 参数 · 控制符 · 转义序列 printf("这是第们学习的第4课"); printf("12345\n6789"); \n  换行 \r  回车键 \b ...

  3. pythonrange函数用法_python range()函数详细用法

    python range()函数详细用法 函数原型:range(start, end, scan): 参数含义:start:计数从start开始.默认是从0开始.例如range(5)等价于range( ...

  4. C语言scanf函数详细解释,[转载]C语言printf和scanf函数详细用法

    Printf和Scan函数的使用方法 一 printf()函数是格式化输出函数, 一般用于向标准输出设备按规定格式输出 信息.在编写程序时经常会用到此函数.printf()函数的调用格式为: prin ...

  5. 用C语言写自己的printf函数

    第一部分分析 首先看一下printf函数的原型声明: int __cdecl printf(const char * __restrict__ _Format,...); 上面这个是我在Dev-C++ ...

  6. c语言int val,c语言不定参数与printf函数的实现

    今天学习了C语言不定参数,C语言中的不定参数主要靠这个头文件实现,这个头文件包含了va_list().va_start().va_end()三个宏,其用法为先声明一个va_list类型的变量,它用于访 ...

  7. printf函数详细解析

    知识点一:printf函数使用公式 1)printf("XXX占位1 XXX 占位2 XXX占位3", 替换1, 替换2, 替换3); 例: #include <stdio. ...

  8. C语言基础知识(1): printf函数用法

    注:转载请标明原文出处链接:https://xiongyiming.blog.csdn.net/article/details/105278436 printf 函数功能:按用户指定格式,将指定的内容 ...

  9. 【C语言】之实现 printf 函数功能

    /************************************************ 文件名: myPrintf.c* 文件功能: 使用putchar函数模拟printf函数的功能* 编 ...

最新文章

  1. 《从零开始学Swift》学习笔记(Day 70)——Swift与Objective-C混合编程之Swift与Objective-CAPI映射...
  2. OpenCV图像数据访问,查询表和时间消耗测试
  3. SQL 语句快速参考
  4. boost::python::bases相关的测试程序
  5. Gin实际编写中间件
  6. mac命令行安装htop
  7. 学习在网页中应用大图片背景的20个精美案例
  8. 新型互联网交换中心促进互联网产业发展,助力信息经济创新
  9. div 重新加载_JS之 加载模糊文本动画
  10. elasticsearch aggregations_elasticsearch 笔记三 之聚合查询之分组计数、平均数、最大值、script、最小值、总和...
  11. Python把列表中的数字尽量等分成n份
  12. 关于JS !!flag 语法
  13. c语言10的10万次方,在c语言编程中 10的n次方应该怎么表达
  14. 细分领域:偏门的色流玩法+简单的色流变现套路
  15. dvwa没有file1.php,文件包含漏洞-DVWA
  16. BUU-0CTFpiapiapia(反序列化字符串逃逸)
  17. springboot整合elasticsearch
  18. 【Pytorch深度学习实践】B站up刘二大人之SoftmaxClassifier-代码理解与实现(8/9)
  19. 组件容器服务器的关系,什么是docker 容器编排
  20. 可以将图片格式转换成CAD格式图纸吗?

热门文章

  1. 天干地支计算公式_高大上:天干地支计算方法
  2. 描述一下我的个人经历
  3. VM15 NAT模式下虚拟机上网
  4. 【已解决】如何做excel表的下拉框多选
  5. 2009-9-17 关于扮猪吃虎
  6. 327、淘宝用户浏览轨迹【逛淘宝记录】的查询设计
  7. Matlab 的动态曲线绘图
  8. outlook2013邮箱找不到服务器,Outlook2013收件箱不显示邮件的解决方法
  9. 如何用MindManager制作一个sop流程
  10. HarmonyOS系统中内核实现烟雾检测的方法