admin 管理员组

文章数量: 1184232


2024年3月26日发(作者:千锋前端培训能找到工作么)

C语言从键盘输入数据

C语言从键盘输入数据

在C语言中,有多个函数可以从键盘获得用户输入:

scanf:和 printf 类似,scanf 可以输入多种类型的数据。

get、getche、getch:这三个函数都用于输入单个字符。

gets:获取一行数据,并作为字符串处理。

scanf 是最灵活、最复杂、最常用的输入函数,但它不能完全取代其

他函数,大家都要有所了解。

scanf函数

scanf 是 scan format 的缩写,意思是格式化扫描,也就是从键盘获

得用户输入。我们先来看一个例子:

#include#includeint main int a, b, c, d; scanf“%d", //输入整数并赋值

给变量a scanf"%d", //输入整数并赋值给变量b printf"a+b=%d", a+b; //计

算a+b的值 scanf"%d %d", c, //输入两个整数并分别赋值给c、d

printf"c*d=%d", c*d; //计算c*d的值 system"pause"; return 0;

运行结果:

12↙

60↙

a+b=72

10 23↙

c*d=230

↙表示按下回车键。

从键盘输入12,按下回车键,scanf 就会读取输入数据并赋值给变量

a,本次输入结束,执行下一条语句。接着给变量b赋值,也是同样的道

理。

第9行代码中,我们同时输入两个整数并分别赋值给c、d。注意

"%d %d"之间是有空格的,所以输入数据时也要有空格。也就是说,输入

数据的格式要和控制字符串的格式一致。

scanf 和 printf 非常相似:

scanf"%d %d", a, // 获取用户输入的两个整数,分别赋值给变量 a

和 bprintf"%d %d", a, b; // 将变量 a 和 b 的是在显示器上输出。

它们都有格式控制字符串,都有变量列表。不同的是,scanf 的变量

前要带一个称为取地址符,也就是获取变量在内存中的地址。

在《二进制思想以及数据的存储》一节中讲到,数据是以二进制的形

式保存在内存中的,字节Byte是最小的可操作单位。为了便于管理,我

们给每个字节分配了一个编号,使用该字节时,只要知道编号就可以,就

像每个学生都有学号,老师会随机抽取学号来让学生回答问题。字节的编

号是有顺序的,从 0 开始,接下来是 1、2、3。

下图是 4G 内存中每个字节的编号以十六进制表示:

这个编号,就叫做地址Address。int a;会在内存中分配四个字节的空

间,我们将第一个字节的'地址称为变量 a 的地址,也就是a的值。对于

前面讲到的整数、浮点数、字符,都要使用 获取它们的地址,scanf 会


本文标签: 输入 数据 字节 整数 变量