前言

scanf()是C语言的格式输入函数,和printf函数一样被声明在stdio.h头文件中,它的基本使用很简单:

1 int a;

2 scanf("%d",&a);//程序执行到这里时,就等待用户输入;它接收的是变量的地址

//所以一般情况下除了指针型变量和数组名要给变量加上取地址符&

下面主要介绍了C语言中scanf的用法和注意事项,下面来一起看看详细的介绍吧

scanf概念

scanf是格式输入函数,功能是在屏幕上输入指定的信息。简单的来说和printf相似却不相同。

scanf调用格式: scanf("",);

如:

#include

int main()

{

int a,b,c;

printf(“input three data:\n”);//使用 scanf 之前先用 printf 提示输入。

scanf("%d%d%d",&a,&b,&c); // scanf 的“输入参数”中,前面的取地址符&记住

printf("%d,%d,%d/n",a,b,c);

return 0;

}

运行时按如下方式输入三个值:

3□4□5↙(输入a,b,c的值)

3,4,5 (printf输出的a,b,c的值)

(1) &a、&b、&c中的&是地址运算符,分别获得这三个变量的内存地址。

(2) "%d%d%d"是按十进值格式输入三个数值。输入时,在两个数据之间可以用一个或多个空格、tab键、回车键分隔。

以下是合法输入方式:

① 3□□4□□□□5↙

② 3↙

4□5↙

③ 3(tab键)4↙

5↙

我们常用到的字符串有:

%c 读入一个字符。

%d 读入十进制整数。

%f 用来输出实数,以小数形式输出。

%lf 用来输出实数,以更长的小数形式输出。

分享下学习中明白的注意点:

1 当定义一个字符变量时,在键盘上输入一个scanf会吸收回车和空格字符,为了进行代码的可行性需在函数结束前加函数getchar()进行吸收。例如:

定义一个字符z,是scanf是从键盘上获取一个值。因为我们定义的是一个字符,所以将键盘上所有获得的字符赋值给z,而空格和回车也是字符,会影响字符赋值给z,所以要在末尾加个getchar()函数进行吸收。

没加getchar():

程序第二次进行运算时回车成了运算符了。

正确结果是:

2 scanf函数中的“格式控制”后面应当是变量地址,而不是变量名。例如,若a和b为int型变量,如果写成scanf("%f%f%f",a,b,c)是错误的。

scanf 的使用小结:

1 在 scanf 的“输入参数”中,变量前面的取地址符&不要忘记。

2 scanf 中双引号内,除了“输入控制符”外什么都不要写。

3 “输出控制符”和“输出参数”无论在“顺序上”还是在“个数上”一定要一一对应。

4 “输入控制符”的类型和变量所定义的类型一定要一致。对于从键盘输入的数据的类 型,数据是用户输入的,程序员是无法决定的,所以在写程序时要考虑容错处理。

5 使用 scanf 之前先用 printf 提示输入。

总结

到此这篇关于c语言中scanf的基本用法的文章就介绍到这了,更多相关c语言scanf用法内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

scanf在c语言中的作用,c语言中scanf的基本用法相关推荐

  1. new在c语言中的作用,C语言中new的用法

    匿名用户 1级 2012-01-26 回答 new是C++中用于动态内存分配的运算符,在C语言中一般使用malloc函数e79fa5e98193e78988e69d8331333337386663. ...

  2. c语言sinx的作用,C语言中 sinx cosx 的用法

    #include #include int main() { double pi=acos(-1.0); double angle; scanf("%lf",&angle) ...

  3. c语言中{的作用,C语言中Static和Const关键字的作用

    C语言中Static和Const关键字的作用 程序的局部变量存在于(堆栈)中,全局变量存在于(静态区 )中,动态申请数据存在于(堆)中.那么关于C语言中Static和Const关键字的作用,你了解多少 ...

  4. sort在c语言中的作用,c语言中sort的用法详解.docx

    c语言中sort的用法详解.docx C语言中SORT的用法详解C语言的学习很多是比较复杂的,那么C语言中SORT的用法的用法你知道吗下面学习啦小编就跟你们详细介绍下C语言中SORT的用法的用法,希望 ...

  5. int在c语言中的作用,C语言中int,Uint,uint16等有什么区别以及用处

    C语言中int,Uint,uint16等有什么区别以及用处.在C中,既然有了int,为什么还要有uint?特别是uint16,uint32等又有什么用?他们有什么区别?" --------- ...

  6. sprintf在c语言中的作用,c语言中sprintf的用法

    c语言中sprintf的用法的用法你知道吗?下面小编就跟你们详细介绍下c语言中sprintf的用法的用法,希望对你们有用. c语言中sprintf的用法的用法如下: sprintf函数的用法 1.该函 ...

  7. scanf和printf在c语言中的作用,C语言中的scanf与printf

    最初学习C语言程序设计时,经常需要通过键盘交互方式请用户输入内容,并需要将用户计算的结果在屏幕上输出.为实现这样的操作,C语言提供了scanf与printf两个函数,使用它们之前,一般需要包含stdi ...

  8. define 在C语言中的作用,c语言中的define用法

    作为代码中,第一个看到的,极有可能就是define这个东西,称为宏!(define是可以出现在任何地方的,但是我们一般把这个写到最开始)然而,很多时候,初学者有时候可能看不懂她,因此,我的c语言学习的 ...

  9. t在c语言中的作用,c语言中\t是什么意思

    C语言的[\t]代表的意思是水平制表符,相当于按了键盘上的TAB按键,通常宽度相当于8个空格的位置,但有些软件允许设置tab的宽度,在双引号或定界符表示的字符串中有效,在单引号表示的字符串中无效. C ...

最新文章

  1. 科研文献|了解多个含水层中微生物砷的迁移:DNA 和 RNA 分析的见解
  2. numpy 数组 填充 0、1和各种值
  3. Geospark加载PostgreSQL数据库
  4. ASP.NET Core ---日志
  5. java复杂性_java – 计算Big-O复杂性
  6. [官版翻译]OpenStack centos版安装(二)
  7. python开发流程视频_自学Python的步骤和方法,Python入门全面视频无偿分享,使用Python开发的一些优点...
  8. Maven 私服的简单使用
  9. SLAM_视觉SLAM中的一种单目稠密建图方法
  10. python布局管理_Python入门-图形用户界面-几何布局管理器-grid布局管理器
  11. 个人设计web前端大作业 基于html5制作美食菜谱网页设计作业代码
  12. 自备ACM模板 —— 数学篇
  13. 企业咨询行业拓客的10个经典方法
  14. 【自然语言处理篇】--Chatterbot聊天机器人
  15. C语言编译器Visual C++(中文版)的安装
  16. RecyclerView图片错乱复用问题
  17. 【湍流】基于kolmogorov结合次谐波补偿的方法生成大气湍流相位屏附matlab代码
  18. 31次课(iptables filter表案例、iptables nat表应用)
  19. vs2019无法打开包括文件
  20. DELMIA软件:机器人L型双轴变位机模型运动机构制作方法

热门文章

  1. php随机匹配算法,字符串匹配的KMP算法+PHP实现
  2. 利用Abel_Cain软件实现ARP欺骗
  3. 领导给你安排这三个紧急任务(不是器重你而是利用你)
  4. RTT开发之windows 环境配置
  5. 大理石分割(回溯法)
  6. 隐私计算是什么?有什么作用?
  7. hive函数用法以及场景
  8. 小程序图片懒加载放在服务器,【小程序】使用uni-app搭建小程序环境---图片懒加载...
  9. 筛选服务器连接暂时不可用,某个自定义筛选器或模块khy-016(如 URLScan)限制了对该文件的访问...
  10. 模版之AnyType