初识c语言必看(1)

一·前言

1·自我介绍

零基础小白,新学会了做目录,所以用目录的方法练习一下初识c语言的自己认为比较重要的内容。

2·c语言介绍

C语言是一门通用计算机编程语言,广泛应用于底层开发。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语
言。
尽管C语言提供了许多低级处理的功能,但仍然保持着良好跨平台的特性,以一个标准规格写出的
C语言程序可在许多电脑平台上进行编译,甚至包含一些嵌入式处理器(单片机或称MCU)以及超
级电脑等作业平台。
二十世纪八十年代,为了避免各开发厂商用的C语言语法产生差异,由美国国家标准局为C语言制
定了一套完整的美国国家标准语法,称为ANSI C,作为C语言最初的标准。 [1] 目前2011年12月8
日,国际标准化组织(ISO)和国际电工委员会(IEC)发布的C11标准是C语言的第三个官方标
准,也是C语言的最新标准,该标准更好的支持了汉字函数名和汉字标识符,一定程度上实现了汉
字编程。
C语言是一门面向过程的计算机编程语言,与C++,Java等面向对象的编程语言有所不同。
其编译器主要有Clang、GCC、WIN-TC、SUBLIME、MSVC、Turbo C等。

二·格式化输出字符

1·格式化输出字符:

%d 十进制有符号整数
%u十进制无符号整数
%x 以十六进制表示的整数
&o 以八进制表示的整数
%f float型浮点数(默认小数为double类型,如果声明为float类型,需要在数后面加一个f)
%lf double型浮点数
%e 指数形式浮点数
%s 字符串
%c 单个字符
%p 打印指针

2·特殊应用:

%3d:要求宽度为3位,如果不足3位,前面空格补齐;如果足够3位,此句无效
%03d:要求宽度为3位,如果不足3位,前面0补齐;如果足够3位,此句无效
%-3d:要求宽度为3位,如果不足3位,后面空格补齐;如果足够3位,此句无效
%.2f:小数点后只保留2位
printf("n=%08.3f\n);
输出的含义是:显示8位数(包含小数点),不足8位前面用0填充。并且保留3位小数。对第4位做四舍五入。

三·c语言中的数据类型

1·整形(int,short,long,long long)

(1) 有符号整型

有符号整型的数据类型通常包括int,short,long,long long四种,因为是有符号类型,所以前面要加上signed,但是通常省略。
(1)int类型
int数据类型大小为4字节,打印类型为%d
(2)short类型
数据类型大小为2字节,打印类型为%hd
(3)long类型
数据类型大小为4字节,打印类型为%ld
(4)long long类型
数据类型大小为8字节,打印类型为%lld

(2)无符号整型

无符号数用unsigned表示,指标是数据量,而没有方向(没有政府,且无符号数最高位不是符号位,而就是数的一部分,无符号数不可能是负数
(1)unsigned int类型
数据类型大小为4字节,打印类型为%u
(2)unsigned short类型
数据类型大小为2字节,打印类型为%hu
(3)unsigied long类型
数据类型大小为4字节,打印类型为%lu
(4)unsigned long long类型
数据类型大小为8字节,打印类型为%llu

2·字符型(char)

字符型变量用于储存一个单一字符,每个字符变量都会占用1个字节。字符型变量需要放’'单引号里面。字符型其实也属于整型大家族,因为字符变量实际上并不是把该字符本身放到变量的内存单元中去,而是将该字符对应的ASCII值放到变量的储存单元中,最大的字符表示的数字值为127,所以足以用1字节储存,因此char的本质就是1字节大小的整型。

3·(补充)常用的ASCII值

‘A’:65
‘a’:97(大小写相差32)
‘0’:48
‘\n’:10
‘\0’:0(所以字符’0’本质还是0)

4·浮点型(float,double)

(1)单精度浮点型(float)
单精度浮点型大小为4字节,打印类型为%f,默认六位小数。
(2)双精度浮点型(double)
双精度浮点型的大小为8字节,打印类型为%lf

5·计算机常用的单位

bit-比特位
byte-字节 1字节=1比特位
KB(本行及下面的都是1024)
MB
GB
TB
PB

四·变量,常量

1·介绍

生活中有些值是随时发生变化的,但是有些值确实始终不变的,这就让我们有了变量和常量一说。

2·使用

(1)命名变量:

1 只能由字母(区分大小写),数字和下划线(_)组成。
2 不能以数字开头。
3 长度不能超过63个字符。
4 变量名中区分大小写。
5 变量名不能用关键字。

(2)命名常量

(1)字面常量(直接输入数字)
(2)const修饰的常变量(本质为变量,不过不能再修改,所以其命名的又叫常变量。)
(3)#define定义的标识符常量(本质就为常量了)
(4)枚举常量(还不熟悉,先不介绍)(下标从0开始)

3·注意

(1)局部优先

局部变量和全局变量,当局部变量和全局变量一样时,且在局部变量作用范围内,局部优先。(一般不要相同)

(2)赋值

养成好习惯,每次用一个变量时要给一个初识值,否则系统会默认给一个自己不知道的数值。

五·作用域和生命周期

1·作用域

·局部变量:他所作用的范围(有效区域)。或者说局部变量不能出{}。
·全局变量:整个工程。如果全局变量在用到的地方的下边,那么需要在用到的地方之前声明一下,告诉计算机你有这个函数。错误例子
错误例子在这里插入图片描述
同时全局变量具有外部属性,在一个工程的不同源文件只需要用声名外部符号extern,即可使用刚才那个源文件中的全局变量a

2·生命周期

进入作用域生命周期开始,出作用域生命周期结束。

五·字符及字符串的简单介绍

(1)字符它其实指很多:它包含中文字符,英文字符,数字字符和ASCII字符。字符数据类型(单个字符)需要‘’放在单引号里,且‘’只能放单个字符,不能放字符串。
(2)字符串需要写在“”内部,并且默认自带\0,\0为字符串的结束标志,库函数strlen是专门用来计算字符串长度的,一直计算到\0才停止,并且\0不算字符串的长度,就算是自己输入\0也不算字符串的长度。
相应的,如果一个数组 char arr[]={‘a’,‘b’,‘c’}那么strlen(arr)打出来的不确定,因为他没有\0结尾,strlen会计算到知道遇到\0为止。

六·转义字符

? 在书写连续多个问号时使用,防止他们被解析成三字母词
’ 用于表示字符常量’
" 用于表示一个字符串内部的双引号
\ 用于表示一个反斜杠,防止它被解释为一个转义序列符
\a 警告字符,蜂鸣
\b 退格符
\f 进纸符
\n 换行
\r 回车
\t 水平制表符 (相当于键盘上的Tab键)
\v 垂直制表符
\ddd ddd表示1~3个八进制的数字(0 ~ 7)
\xdd dd表示2个十六进制数字 (0 ~ 15)

说明:一 比如在屏幕上打印一个单引号’
printf(“%c\n”,’
\‘
’) \可以理解为使后面那个具有特殊作用的字符变为正常字符,不在具备特殊作用。
说明:二:虽然转义字符看着是由几个字符一起组成,但他们看作是一个字符(长度),叫一个转义字符。

七·函数

1·介绍

介绍:数学中,我们为了方便求值,引入了函数的概念,那么在计算机中,它依然存在。他可以提高整个工程的效率,比如你要用到很多次两数相加,那么你写出来的代码一定很多次重复这个操作,但是如果引用函数,那么你只需要表达一次。

2·简单举例

输入以下代码后,我只需要在控制板输入9,就能能得到9*9阶乘表
在这里插入图片描述
在这里插入图片描述

八·数组

1·介绍

介绍:当我们想要存储很多数字时,一个一个定义太麻烦,这时候就有了数组。

2·数组定义

数组定义:一组相同类型的元素。(初识1中已经说明,字符可以是中文字符,英文字符,数字字符和ASCII字符)

3·应用

(1)应用

比如储存1~10,我们只需要一个式子便可以解决。
int arr[]={1,2,3,4,5,6,7,8,9,10};

(2)应用注意

简单说明一下如果数组初始化了,那么中括号里的数组大小可以不写,它会自动根据右边初始化个数来确认,如果写了,但是右边内容不够,缺少的会自动补0。

4·补充

(1)数组下标从0开始,依次增加。比如前面的那个数组,如果想要 a = 5,那么就可以写为这样:int a = arr[4];
(2)定义数组时中括号里放的数值必须为常量,但是在后面使用下标时里面的可以是变量。

九·注释

1·说明

  1. 代码中有不需要的代码可以直接删除,也可注释掉
  2. 代码中有些代码比较难懂,可以加一下注释文字

二·两种风格

C语言风格的注释 /xxxxxx/
缺陷:不能嵌套注释
C++风格的注释 //xxxxxxxx
可以注释一行也可以注释多行

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值