1.变量名,变量值和变量地址
我们声明一个变量,编译器就分配给一个地址。变量名,变量值和变量地址的关系如下图所示:
2. scanf ()从键盘输入数据储存于变量地址
我们从键盘输入的都是文本,因为键盘只能生成文本字符:字符,数字和标点符号。如果要输入整数 2014,就要键入2,0,1,4.
如果要将其存储为数值而不是字符串,程序就必须要把字符依次转换成数值,这就是 scanf( ) 要做的。
scanf() 把输入的字符串转换成整数,浮点数,字符和字符串,而 printf( ) 正好与之相反,把整数,浮点数,字符,字符串转换成显示在屏幕上的文本。
scanf() 与 printf() 类似,也要使用 格式字符串 和 参数列表。scanf() 中的格式字符串表明字符输入流的目标数据类型。
两个函数的主要区别在于参数列表中。printf() 函数使用变量,常量和表达式,而 scanf( ) 函数使用指向变量的指针。
语法:
scanf("format string", argument_list);
这里不需要了解指针,只需要记住一下简单的两条:
用 scanf 读取
- 基本变量类型的值,在变量名前加上一个
&
- 把字符串读入数组中,不要使用
&
下面的程序演示了这两条规则:
例1. 输入三个整数并输出
#include <stdio.h>
int main()
{
int check;
int a, b;
//
printf("Please input three number, separate them using space button:\n");
// Input two variables
scanf("%d%d%n", &a, &b, &check);
// Print value of a, b, and check
printf("%d\n%d\n%d", a, b, check);
return 0;
}
结果
Please input three number, separate them using space button:
10 20 5
10
20
5
例2. 程序打印出输入数字的立方体
#include<stdio.h>
int main(){
int number;
printf("enter a number:");
scanf("%d", &number);
printf("cube of number is:%d ", number*number*number);
return 0;
}
结果
enter a number:9
cube of number is:729
例3 用C语言输入和输出的简单示例,该示例显示两个数字的加法运算
#include<stdio.h>
int main(){
int x=0, y=0, result=0;
printf("enter first number:");
scanf("%d", &x);
printf("enter second number:");
scanf("%d", &y);
result=x+y;
printf("sum of 2 numbers:%d ", result);
return 0;
}
结果
enter first number:5
enter second number:6
sum of 2 numbers:11
初学者在使用 scanf 时,在应该写 & 的时候容易忽略 & ,所以每次使用 scanf 的时候一定要格外小心。通常情况下,必要的地方缺少 & 会让程序崩溃(编译器没有警告),但是也有时候程序并不会崩溃,这时候找 bug 可能会让你头痛。
除教程外,本网站大部分文章来自互联网,如果有内容冒犯到你,请联系我们删除!