C语言期末复习版(基础知识梳理总结)一

大家好!我是同学〖森〗,一名计算机爱好者,今天让我们进入知识整理复习模式。若有错误,请多多指教。

目录

思维导图

 一、数据类型

思维导图

(一)类型

(二)计算机中的单位

 二、数据的两种类型

思维导图

(一)、常量

1、字面常量

 2、const修饰的常变量

思维导图

1) 定义

2)不能用于数组定义

 3、枚举常量

4、#define定义的标识符常量 

(二)、变量 

1、定义:

2、变量定义

3、 变量的分类        

4、变量作用域和生命周期

    三、字符串,转义字符,注释

思维导图​

 (一)字符串

1、定义:

注:

(二)转义字符 

1、分类

 (三)注释

 四、常见关键字

思维导图

 (一)32个关键字

(二)宽度和精度 

 五、操作符


 概述:

1.写本篇博客的目的是给新学c的友友们整理一下c语言的基本知识点。在期末考试之前能有一份参考文章。从而发现自己那部分不足,再另加训练。祝大家期末取个好成绩。

2、本篇博客在网上查找了很多内容,同时也参考一些书籍,以及老师的PPT,还有一些文章。若有侵权,请与我联系。

3、创作不易,如果你觉得同学〖森〗写的内容对你有帮助的话就点赞收藏关注支持一下小主吧!期待与你的下一次相遇。

思维导图




 一、数据类型

思维导图

(一)类型

(二)计算机中的单位




 二、数据的两种类型

思维导图

(一)、常量

1、字面常量

 2、const修饰的常变量

思维导图

1) 定义

const修饰的数据类型是指常类型,常类型的变量或对象的值是不能被更新的。

2)不能用于数组定义

3) 常变量与常量的异同:

常变量具有变量的基本属性: 有类型,占存储单元,只是不允许改变其值。可以说,常变量是有名字的不变量,而常量是没有名字的不变量。有名字就便于在程序中被引用。

#define Pi 3.1415926	//定义符号常量
const float pi=3.1415926;	//定义常变量

符号常量Pi和常变量pi都代表3.1415926,在程序中都能使用。但二者性质不同:

定义符号常量用#define指令,它是预编译指令,它只是用符号常量代表一个字符串,在预编译时仅进行字符替换,在预编译后,符号常量就不存在了(全置换成3.1415926了),对符号常量的名字是不分配存储单元的。而常变量要占用存储单元,有变量值,只是该值不改变而已。从使用的角度看,常变量具有符号常量的优点,而且使用更方便。有了常变量以后,可以不必多用符号常量。 

 3、枚举常量

1)定义:是指将变量的值一一列出来,变量的值只限于列举出来的值的范围内,例如:星期,性别等.

2)用enum定义

#include<stdio.h>
enum color	//三原色
{
	RED,
	GREEN,
	BLUE
};

int main()
{
	printf("%d,%d,%d", RED, GREEN, BLUE);

	return 0;
}

3)枚举常量的默认是从0开始,依次向下递增1的

4、#define定义的标识符常量 

 思维导图

 1)概念:

#define 命令是 C 语言中的一个宏定义命令 ,它用来将一个标识符定义为一个字符串 , 该标识符被称为宏名, 被定义的字符串称为替换文本。该命令有两种格式:一种是简单的宏定义, 另一种是带参数的宏定义。一般都用大写字母,与变量区别

2)无参宏定义

a、一般形式

#define 宏名 字符串

#define MAX 1000

其中的“#”表示这是一条预处理命令。凡是以“#”开头的均为预处理命令。“define”为宏定义命令。“标识符”为所定义的宏名。“字符串”可以是常数、表达式、格式串等。

b、define定义常量

#include<stdio.h>

#define MAX 1000

int main()
{
	int m = MAX;

	printf("%d", m);

	return 0;
}

c、 define定义宏 

#include<stdio.h>	//求a+b的平方
#define M (a+b)        //宏定义
        
int main()
{
	int s, a, b;

	printf("请输入a和b的值:\n");

	scanf("%d%d", &a, &b);

	s = M * M;        //宏调用

	printf("%d", s);

	return 0;
}

在预处理时经宏展开后该语句变为: S=(a+b)*(a+b) 。 但要注意的是,在宏定义中表达式(a+b)两边的括号不能少。否则会发生错误。

注意:

        a.宏定义是用宏名来表示一个字符串,在宏展开时又以该字符串取代宏名,这只是一种简单的代换,字符串中可以含任何字符,可以是常数,也可以是表达式,预处理程序对它不作任何检查。如有错误,只能在编译已被宏展开后的源程序时发现。

        b.宏定义不是说明或语句,在行末不必加分号,如加上分号则连分号也一起置换。 

        c.宏定义其作用域为宏定义命令起到源程序结束。如要终止其作用域可使用#undef命令。

3)带参宏定义

a、一般形式

        #define 宏名(形参表)字符串    

#define MAX(x, y) ((x)>(y)?(x):(y))

b、 

#include<stdio.h>
#define MAX(x, y) ((x)>(y)?(x):(y))    //宏定义

int main()
{
	int a = 10;
	int b = 20;

	//int m = get_max(a, b);
	int m = MAX(a+2, b/3);            //宏引用

	printf("较大值:%d\n", m);

	return 0;
}

 宏展开后该语句为: max=(x>y)?x:y; 

(二)、变量 

1、定义:

变量代表一个有名字的、具有特定属性的一个存储单元。 变量用来存放数据,也就是存放变量的值。 在程序运行期间,变量的值是可以改变的。 变量必须先定义,后使用。

2、变量定义

int age = 150;
float weight = 45.5f;
char ch = 'w';


3、 变量的分类        

        局部变量
        全局变量
#include <stdio.h>

int global = 2019;//全局变量

int main()
{
    int local = 2018;//局部变量

    //下面定义的global会不会有问题?
    int global = 2020;//局部变量

    printf("global = %d\n", global);

    return 0; }

总结:

上面的局部变量 global 变量的定义其实没有什么问题的!
当局部变量和全局变量同名的时候,局部变量优先使用。

4、变量作用域和生命周期

 a、作用域(即使用范围)

        局部变量:变量所在的局部范围。

        全局变量:整个工程。

b、生命周期

        局部变量:进入局部范围生命开始,出局部范围生命结束。

        全局变量:程序的生命周期。




    三、字符串,转义字符,注释

思维导图

 (一)字符串

1、定义:

        用双引号括起来的一串字符。

注:

字符串的结束标准是\0的转义字符,在计算字符串长度的时候\0是结束标准,不算作字符串内容。

2、ASCII表

注意: 

 

(二)转义字符 

1、分类

 (三)注释

  • 1. 代码中有不需要的代码可以直接删除,也可以注释掉
  • 2. 代码中有些代码比较难懂,可以加一下注释文字
  • // (c++)
  • /* */(c语言)缺陷:不能嵌套注释


 四、常见关键字

思维导图

 (一)32个关键字

 

(二)宽度和精度 

 五、操作符

 

 

评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

同学〖森〗

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值