从0开始学c语言-03-变量和常量

本人0基础开始学编程,我能学会的,你也一定可以,学会多少写多少。

下载安装请从官网入手,社区版本即可,这里主要使用的软件是VS2019,图标如下。

上一篇

从0开始学c语言-02-关于数据类型_阿秋的阿秋不是阿秋的博客-CSDN博客

总结篇更精简

从0开始学c语言-总结01-c语言的粗略认识和快捷键_阿秋的阿秋不是阿秋的博客-CSDN博客

就像字面意思一样,变量就是可以改变的量,常量就是不可以改变的量。

目录

现在我们来创建一个变量。

对此,我有几个想尝试的东西。

1.去掉变量变化方式,并改变初始值。

2.改变变量变化的方式

接下来说一下局部变量和全局变量。

1.让全局变量在主函数之下,看能否打印出来。

2.使两个变量名字统一,看打印谁优先。

让我们用变量整点新活吧!

1.改变a和b的初始值

2.改变sum的初始值

3.改变sum的表达式

4.去掉sum表达式

变量也有作用域和生命周期呢~

作用域:哪里起作用哪里就是作用域!

生命周期:变量的创建到变量的销毁之间的时间段

常量主要分为以下四种

1.字面常量

2.const修饰的常变量

3.#define定义的标识符常量

4.枚举常量


现在我们来创建一个变量。

#include
int main()
{
    int a = 0;  //int表示变量(数据的)类型,a表示变量的名字,0表示变量的初始值
    a = a + 1;  //表示变量的变化方式
    printf("%d\n", a);  //进行变量的打印
    return 0;
}

从0开始学c语言-03-变量和常量_第1张图片

 OK,那么可以看到打印结果是1。

再完整地解释一下这个运行过程,

我们先给变量进行类型以及名字和初始值的定义,再对变量进行变化,最后进行打印,验证一下这个变量是否改变了。

对此,我有几个想尝试的东西。

1.去掉变量变化方式,并改变初始值。

从0开始学c语言-03-变量和常量_第2张图片

我们可以看到,如果去掉a=a+1并且把初始值设置为4,那么结果就会为4。

2.改变变量变化的方式

从0开始学c语言-03-变量和常量_第3张图片

哦吼,可以看到,初始值是4也顶不住直接赋值呢。

我的尝试就这些,其他的大家自己探索一下哦!

接下来说一下局部变量和全局变量。

用程序说,我不喜欢单纯的定义。

int aha = 300;  //全局变量,大括号外定义
int main()
{
    int aqiu = 100;  //局部变量,大括号内定义
    printf("%d\n", aqiu);
    printf("%d\n", aha);
    return 0;
}

从0开始学c语言-03-变量和常量_第4张图片

 可以看到两个变量都可以打印出来,我还想做点小尝试。

1.让全局变量在主函数之下,看能否打印出来。

从0开始学c语言-03-变量和常量_第5张图片

 啊哈,竟然不能打印出来哦!

笨蛋,当然不可以了,程序是从main函数第一行开始执行的,你把它放到main函数之后,它怎么打印哦!

2.使两个变量名字统一,看打印谁优先。

从0开始学c语言-03-变量和常量_第6张图片

芜湖,是局部变量的胜利呢!

看来在名字一样的情况下,是局部变量优先打印呢,全局变量加油哦!

让我们用变量整点新活吧!

#define _CRT_SECURE_NO_WARNINGS 1  //这是为了方便scanf出场而使用的呢,vs2019才需要使用的吧,最新版应该完善了这个功能
#include

int main()
{
    printf("请输入两个数字hh\n"); //联系一下下面的程序,看看为什么需要这句话呢?
    int a = 0;  //我们请来了a变量先生,给了他0初始值
    int b = 0;  //b女士也来了,同样初始值为0呢
    int sum = 0;  //sum姐姐过来干嘛的
    scanf("%d %d", &a, &b); //scanf是新面孔呢,我说一下吧,它是为了让我们拥有输入a先生和b女士数值的权利,请感谢她的出场吧
    sum = a + b;  //sum君对a和b出手了呢,它终于展示了它的目的
    printf("%d\n", sum);  //printf依旧是称职的老管家,进行了最后的落幕程序
    return 0;
}

 从0开始学c语言-03-变量和常量_第7张图片

 哇塞,我们成功执行了!

注意输入的时候3和5之间要空格,然后回车就得到结果了哦!

但是我依旧想尝试一下呢

1.改变a和b的初始值

从0开始学c语言-03-变量和常量_第8张图片

 好吧,看来初始值也没办法抵挡我们直接赋值的权利呢!

2.改变sum的初始值

从0开始学c语言-03-变量和常量_第9张图片

 sum的初始值也不行呢,还是会执行最后一行程序来定值呢。

3.改变sum的表达式

从0开始学c语言-03-变量和常量_第10张图片

 这个尝试有点蠢,但是我想看看哈哈哈

4.去掉sum表达式

从0开始学c语言-03-变量和常量_第11张图片

 哈哈哈,有点搞笑了,愚蠢的尝试就到此为止吧!

变量也有作用域和生命周期呢~

作用域:哪里起作用哪里就是作用域!

局部变量:作用域在局部变量所在的局部范围内

全局变量:整个工程起作用,同一工程下的源文件使用另一源文件下的全局变量需要声明一下呢

从0开始学c语言-03-变量和常量_第12张图片

 看见了吗?两个源文件,只要声明一下就可以打印出来了呢!

声明请使用extern+声明对象

生命周期:变量的创建到变量的销毁之间的时间段

局部变量:括号内(也就是作用域内是活着的

全局变量:整个程序的生命周期(也就是程序结束它就结束了

呜呜呜,孩子加油写,终于到常量了!

常量主要分为以下四种

1.字面常量

int main()
{
    5.4;
    3;
    'a';
    "sksdo";  //都是字面常量
    return 0;
}

2.const修饰的常变量

这里注意:常变量本质上是变量,但是因为具有常属性(也就是不能被改变的属性),所以被称为常变量。

从0开始学c语言-03-变量和常量_第13张图片

这是一个变量a,接下来我们加上const进行修饰。

 从0开始学c语言-03-变量和常量_第14张图片

出现错误了呢!

那是当然的了,const修饰后就不可更改了,尽管本质上还是个变量,但是它现在是常变量了,所以a=999也就会引起程序报错了~

3.#define定义的标识符常量

从0开始学c语言-03-变量和常量_第15张图片

嗯哼,细心的小伙伴一定发现为什么没有=这个问题了!

需要注意的是,我们就是这么规定的

和define有关的规定:1.没有=  2.后面没有分号

如果想试试能不能改变,自己去试试吧,我要抓紧写完!

4.枚举常量

从0开始学c语言-03-变量和常量_第16张图片

enum是枚举关键字,(之后的新章再说什么是关键字)

 枚举是说将变量可能的值列举出来,变量的值被限制在列举的范围之内,用enum声明枚举类型。

上图的程序是演示了枚举常量在编译时赋值为0,1,2,……

当然也可以直接赋值,比如这样

 从0开始学c语言-03-变量和常量_第17张图片

大概就是这样,我觉得初学就像交朋友一样,学到这里就可以了,等以后再深入了解的时候我们再来探讨,这玩意怎么用。

下一篇

从0开始学c语言-04-神奇的\0、数组初始化、求字符长度_阿秋的阿秋不是阿秋的博客-CSDN博客

总结篇

从0开始学c语言-总结01-c语言的粗略认识和快捷键_阿秋的阿秋不是阿秋的博客-CSDN博客

你可能感兴趣的:(从0开始学c语言,c语言,visualstudio)