学逆向论坛

找回密码
立即注册

只需一步,快速开始

发新帖

1245

积分

6

好友

46

主题
发表于 2019-3-5 23:47:43 | 查看: 6017| 回复: 1
本帖最后由 会飞的鱼 于 2019-4-10 13:51 编辑


C语言快速入门系列-0(前言部分)
C语言快速入门系列-1(初识C)
C语言快速入门系列-2(编程环境)
C语言快速入门系列-3(第一个程序)
C语言快速入门系列-5(运算符)
C语言快速入门系列-6(数组)
C语言快速入门系列-7(条件判断)
C语言快速入门系列-8(for循环)
C语言快速入门系列-9(while循环)
==================================================================================================================
Hello大家好,上一节我们看完了一些简单的输出,这节呢我们就看一下变量的用法。
这一节的字可能有点多,希望大家耐心仔细看完,很重要哦,为了方便阅读多字的文章,我特地加大了点字号。
跟之前风格一样,我不太喜欢啰嗦其他的太多,我们直接步入主题。
什么是变量呢?
其实变量可以结合我们数学上的函数来理解,y=x+1,这里呢y和x就是变量,当给x一个值,例如 x=1 的时侯我们可以求出来y=2
所以我们C语言中的变量也非常好理解
x,y,z,m,n等都可以是变量
count,searchs,num等有多个字母可以是变量吗?
答案当然是可以的,如何理解呢?
你同样可以对比数学来理解,以count为例
我们可以把count看成一个整体
那么y=x+1这个式子还可以写成什么呢?它还可以写成y=count+1,这里我们把count看成一个变量,令count=1,即可求出来y=2,同样是可以的。


简单理解了一下变量之后我们开始看我们今天的例子程序:


#include <stdio.h>
int main()
{
    int x,y,count,sum;
    x=1;
    y=x+1;
    printf("%d\n",y);
    count=2;
    sum=count+3;
    printf("%d",sum);
    return 0;
}


然后我们看一下运行的结果:
11.jpg

这里我们又涉及到新的知识点了
int :整型数据类型,用法很简单就是int然后空格然后后面跟上变量名,多个变量名之间用逗号隔开,最后不要忘记分号。
= :赋值,这里为什么要特地说一下等号呢,C语言中的等号是赋值的符号,那么具体是什么意思呢?就拿y=x+1来说把,等号的意思就是将x+1算出来的结果赋值给y,这个时候y就是x+1的结果了,很简单吧。x=1呢?当然就是把1给x赋值呗,那么变量x的值就为1.
printf("%d",sum); :这一句是怎么回事呢?之前的文章给大家介绍过输出函数printf了,这里呢是格式化的输出,%d就代表输出整型(整数)的数据,然后用双引号引起来,然后后面跟个逗号,逗号之后加变量名,然后最后分号。作用就是将整型变量sum的值给输出。那么变量sum的值是多少呢?上一语句已经算出来了sum=count+3;,所以sum=2+3,也就是5,所以我们的结果不久很正常是5了嘛,同理y的值为2,也就是我们输出结果的第一行,注意哦\n代表换行,之前说过了,小细节不要忘记哦~


虽然变量名可以随便起,但是也不是没有限制哦下面很重要!!!重要!!重要!!
下面列出的是变量名的合法规则

1、只能由字母、数字、下划线组成;例如:sum_x123,  count2_hello, xue_ni_xiang等都是可以的

2、第一个字符必须是英文字母;例如:hi, hahaha, x1, y2等都是可以的,但是像:1x, 5y, 86666等都不可以哦

(注意:以下划线开头的变量名如:_x, _search等在codeblocks17.12版本是可以通过的,其他编译器和编程环境不一定哦)

3、有效长度为255个字符;这个不用多解释了吧···,就是不能太长了。

4、不可以包含标点符号和类型说明符(%、&、!、#、@、$);

5、不可以是关键词。什么是关键词呢?往下看:

关键词:

由ANSI标准定义的C语言关键字共32个

auto、 double、 int、 struct、 break 、else、 long、 switch、case、 enum、 register 、typedef、 char 、extern 、return、 union 、const、 float 、short、 unsigned、 continue、 for、 signed 、void、default 、goto、 sizeof 、volatile、 do 、if 、while、 static。


这32个关键字就是已经被C语言本身使用,已经又具体代表的含义,(像int,我们上面刚刚介绍到代表整型的意思)不能作为其他用途使用,比如不能定义成变量名、函数名(以后会介绍)。

这些简单一记忆就ok啦,具体什么含义我们之后会慢慢了解哦~

接下来我们看一下小数型(包括单浮点型,双浮点型),只会整数是远远不行的哦

但是不用担心,整型会了其他类型就是变个字母,完全一样的套路,so  easy

定义变量格式 int x; 整型 ——输出格式 printf("%d",x);

定义变量格式 float x; 单浮点型 ——输出格式 printf("%f",x);


定义变量格式 double x; 双浮点型 ——输出格式 printf("%lf",x);

单浮点和双浮点的主要区别

1、机器内占用空间不同,float占4字节,double占8字节

2、表示的精度不同,float有效位数8位,double16位,具体情况因环境不同而略有差别

说白了就是double比float表示的数更精确,具体体现在计算小数位数很多的时候。

怎么样很简单吧,我们把最上面的程序分别改写成单浮点型和双浮点型,分别如下:

#include <stdio.h>
int main()
{
    float x,y;
    double count,sum;
    x=1;
    y=x+1;
    printf("%f\n",y);
    count=2;
    sum=count+3;
    printf("%lf",sum);
    return 0;
}

具体的运行结果大家自行上机实验;

这节的任务:

1、熟练掌握三种类型的用法

2、尝试用三种方法计算 ①(3.1415926+1.234567)②(123+456)观察运行的结果有什么不同

有问题可以在评论区留言哦~说不准有大神就解决了呢。






温馨提示:
1.如果您喜欢这篇帖子,请给作者点赞评分,点赞会增加帖子的热度,评分会给作者加学币。(评分不会扣掉您的积分,系统每天都会重置您的评分额度)。
2.回复帖子不仅是对作者的认可,还可以获得学币奖励,请尊重他人的劳动成果,拒绝做伸手党!
3.发广告、灌水回复等违规行为一经发现直接禁言,如果本帖内容涉嫌违规,请点击论坛底部的举报反馈按钮,也可以在【投诉建议】板块发帖举报。

    发表于 2020-7-8 06:44:39
    看了LZ的帖子,我只想说一句很好很强大!

    小黑屋|手机版|站务邮箱|学逆向论坛 ( 粤ICP备2021023307号 )|网站地图

    GMT+8, 2024-4-25 02:13 , Processed in 0.092839 second(s), 45 queries .

    Powered by Discuz! X3.4

    Copyright © 2001-2021, Tencent Cloud.

    快速回复 返回顶部 返回列表