C语言编程之《变量—用来存储数据的小房子》

  上一节我们了解到计算机是使用一个一个的小房子来记住数字。计算机有很多不同种类的小房子。

int a;

    代表向计算机申请一个小房子用来存放数值,小房子的名字叫做a。int和a之间有一个空格,a的末尾有一个分号,代表这句话结束。

如果要申请多个小房子,则在a后面继续加上b和c。用逗号隔开,形如:

int a,b,c;

这里有一个小问题,就是给申请的“小房子”起名字,原则上来说,你可以随便起,叫a可以,叫b也可以,叫x也可以,名字甚至是多个字母组成,例如利益叫做aaa,也可以叫做abc,也可以叫做book。也可以是字母和数字的组合例如:叫做a1.或者叫做abc123都是可以的。

到这里,可能还有很多童鞋想问,int究竟是什么意思呢?

其实,int是用来控制“小房子”存放那种类型的数。int表示你目前申请的小房子只能够存放整数。

int是英文单词integer(整数)的缩写。

如果要存放小数怎么办?

我们用float来申请一个小房子用来存放“小数”,形式如下:

float a;

    这样“小房子a”就可以用来存放小数了,例如:

float a;

a=1.5;

printf("%f",a);

    就表示申请一个用来存放小数的“小房子a”,里面存放了小数1.5.

注意:小数在C语言中称作“浮点数”,在C语言中用float表示。

之前我们在printf语句中输出整数时候,使用的事%d,此时需要输出的是小数,我们要用%f。

好了,我们来总结一下,这里的“小房子”在外面C语言的专业术语中叫做“变量”。int和float是用来说明小房子是用来存放何种类型的数,我们这里将其称作“变量类型”或者“数据类型”。

类似int a;或者float a;这种形式,我们称作“定义变量”,它的语法格式如下:

口语】 【小房子的类型】 【小房子的名称】,【小房子的名称】;

术语】 【变量的类型】 【变量的名称】,【变量的名称】;

代码 int a,b;

    现在我们知道,int a表示申请一个小房子a用来存放一个整数,即定义一个整型变量a来存放整数;而float a表示的则是申请一个小房子a来存放一个小数,即定义一个浮点型(实型)变量a来存放浮点数(小数)。

再来看另外一个有趣的问题,代码如下:

#include#includeint main(){int a;a=1;a=2;printf("%d",a);return 0;}

    请问计算机执行完上面的代码,将会输出1还是2?

    尝试过后就会发现,计算机显示的是2,也就是说小房子a中的值最终为2.通过观察代码我们可以发现,我们首先是将1放入小房子a中,紧接着我们又将2放入小房子a中,那么请问原来小房子中的1去哪里了呢?,答案是被信赖的2给覆盖掉了,原来的1已经消失了。也就是说,小房子a中有且仅能存放一个值,如果多次给小房子a复制的话,小房子a中存放的实在是最后一个的值,例如:

#include#includeint main(){int a;a=1;a=2;a=3;a=4;a=5;a=6;printf("%d",a);return 0;}

计算机运行完上面这段代码最终将输出6.也就是说小房子a中的值最终为6,前五次的赋值全部被覆盖了。

一个更有意思的问题来了,请继续看下面的代码:

#include#includeint main(){int a;a=7;a=a+1;printf("%d",a);return 0;}

    计算机运行完上面这段代码最终将输出6.也即是说小房子a中的值最终为8.计算机在执行a=7这句话后,小房子a

存储的值为7,之后计算机又紧接着运行了a=a+1这句话。运行完a=a+1这句话后,小房子的值就变化为8了。也就是说a=a+1这句话的作用是把小房子a中的值在原本的基础上增加了1,我们来分析一下这句话。

a=a+1这句话计算机分两步执行,这句话中有两个操作符,第一个是“+”号,另一个是“=”(赋值号),因为+号的优先级别要比“=”要高,因此计算机先执行a+1,此时小房子a中的值仍然为7,所以a+1的值为8.紧接着计算机就会执行复制语句,将计算机的值8再赋值给a。此时a的值就更新为8了。

第一节:C语言编程之《让计算机开口说话》

第二节:C语言编程之《让输出带有颜色》

第三节:C语言编程之《用计算机做加法》

你可能感兴趣的:(C语言编程之《变量—用来存储数据的小房子》)