Menu Close

scanf( ) 函数

1.变量名,变量值和变量地址

我们声明一个变量,编译器就分配给一个地址。变量名,变量值和变量地址的关系如下图所示:

变量值,变量名和变量地址
变量值,变量名和变量地址

 

2. scanf ()从键盘输入数据储存于变量地址

我们从键盘输入的都是文本,因为键盘只能生成文本字符:字符,数字和标点符号。如果要输入整数 2014,就要键入2,0,1,4.

如果要将其存储为数值而不是字符串,程序就必须要把字符依次转换成数值,这就是 scanf( ) 要做的。

scanf() 把输入的字符串转换成整数,浮点数,字符和字符串,而 printf( ) 正好与之相反,把整数,浮点数,字符,字符串转换成显示在屏幕上的文本。

scanf() 与 printf() 类似,也要使用 格式字符串 和 参数列表。scanf() 中的格式字符串表明字符输入流的目标数据类型。

两个函数的主要区别在于参数列表中。printf() 函数使用变量,常量和表达式,而 scanf( ) 函数使用指向变量的指针​。

语法:

这里不需要了解指针,只需要记住一下简单的两条:

用 scanf 读取

  • 基本变量类型的值,在变量名前加上一个 &
  • 把字符串读入数组中,不要使用 &

下面的程序演示了这两条规则:

例1. 输入三个整数并输出

结果

例2. 程序打印出输入数字的立方体

结果

例3 用C语言输入和输出的简单示例,该示例显示两个数字的加法运算

结果

初学者在使用 scanf 时,在应该写 & 的时候容易忽略 & ,所以每次使用 scanf 的时候一定要格外小心。通常情况下,必要的地方缺少 & 会让程序崩溃(编译器没有警告),但是也有时候程序并不会崩溃,这时候找 bug 可能会让你头痛。

除教程外,本网站大部分文章来自互联网,如果有内容冒犯到你,请联系我们删除!
Posted in C语言教程