郝斌C语言学习笔记(原创)

C语言学习笔记

1 快捷键

1、注释

  • Ctrl+K+C 注释

  • Ctrl+K+U 取消注释

2、自动对齐格式

  • Alt+F8

3、多行整体移动

  • Tab 多行一起往右移动

  • Shift + Tab 多行一起往左移动

2 发展

机器语言:0000 0001 1101 10000(速度最快)

汇编语言:ADD AX,BX

高级语言:a + b

  1. 结构化语言(C语言等)

  2. 面向对象语言(C++、Java、C#等)

3 优缺点

优点:代码量小、速度快、功能强大

缺点:危险性高、开发周期长、可移植性不强

4 关键字

5 预备知识

1、CPU 内存条 硬盘 显卡 主板显示器 之间的关系

答:点开一个视频,先将硬盘中的数据调入内存条,然后CPU对数据进行处理,再利用显示器或者声卡显示。主板是中间传输设备,将前面提到的硬件连接起来。

2、什么是数据类型(注意内存分配)

答:主要分为基本类型数据和复合类型数据。

(1)基本类型数据

  • 整数(整型/int,占4个字节;短整型/short int,占2个字节;长整型/long int,占8个字节);

  • 浮点数【实数】(单精度浮点数/float,占4个字节;双精度浮点数/double,占8个字节);

  • 字符(char,占1个字节,Tips: C语言没有字符串,只有字符数组)

(2)复和类型数据

  • 结构体

  • 枚举(重点)

  • 共用体(已被淘汰)

3、变量的含义

答:变量的本质是内存中的一段存储空间。

4、变量为什么要初始化

答:软件运行时,操作系统会分配一部分内存空间,软件运行完毕后,操作系统回收内存空间,但不会清空该内存空间中残留的垃圾数据(比如使用其他软件时所存放过的数据,或是IDE自己设置的填充数,且这些数据都是0&1组合),因此必须对变量初始化,否则就无实际意义。

5、如何定义变量

答:数据类型 变量名 = 要赋的值;

等价于:

数据类型 变量名;

变量名 = 要赋的值;

举例子:

int i = 3;等价于 int i;i = 3;

int i,j;等价于 int i;int j;

int i,j = 3;等价于 int i;int j;j = 3;

int i = 3,j = 5;等价于 int i;int j;i = 3;j = 5;

int i,j;i = j =5;等价于 int i,j;i = 5;j = 5;

6、常量在C语言中如何表示

答:整数:

十进制:传统的写法

十六进制:前面加0x或0X

八进制:前面加0

浮点数:

传统的写法:float x = 3.2;

科学计数法:float x = 3.2e3;//x的值为3200

字符:

单个字符用单引号括起来:‘A’ 表示字符 A。‘AB’ 错误,“AB” 正确。

字符串用双引号括起来:“A” 正确,因为 “A” 代表 ‘A’ 和 ‘\0’ 的组合。

7、常量以什么样的二进制代码存储在计算机中

答:整数以补码形式转化为二进制代码,并存储在计算机中;实数以 IEEE754 标准转化为二进制代码存储在计算机中;字符的存储方式与整数相同。

8、代码规范化

答:先定义变量;再对变量进行操作;最后输出值。

9、什么是字节

答:字节就是存储数据的单位,并且是硬件所能访问的最小单位。其中,1字节 = 8位;1K = 1024字节;1M = 1024K;1G = 1024M。

10、什么是ASCII码

答:ASCII码不是一个值,而是一种规定,它规定了用哪个整数值去表示对应的字符。比如:'A' -- 65;'B' -- 66;'a' -- 97;'b' -- 98;'O' -- 48。

11、C 语言对真假的处理

答:非零为真,零为假;真用1表示,假用0表示。

12、什么是程序

答:程序 = 算法 + 语言。

13、如何看懂一个程序

答:流程(程序执行的先后顺序) == > 每个语句的功能 ==> 试数。

14、如何学习一些需要算法的程序【如何掌握一个程序】

答:尝试自己去编程解决它,但大部分人都无法解决。这时不要气馁,也不要自卑。如果十五分钟还想不出来,建议看答案,关键把答案看懂。

首先,照着答案去敲,调试错误。

然后,不看答案,自己独立把答案敲出来,同时尝试修改程序,理解修改后程序的输出结果。

如果实在无法理解就先背。

6 常见C语言程序

  • 判断一个数字是否是素数

  • 判断一个数字是否是回文数

  • 编程实现求一个十进制数字的二进制形式

  • 求一个数字的每位是奇数的数字取出来组合形成的新数字

  • 求一个数字倒过来的数字

7 关键内容

7.1 printf()的用法

  • 含义

    将变量的内容输出到显示器上

  • 输出控制符

    %d —— int(十进制)

    %ld —— long int(十进制)

    %x / %#x / %X / %#X —— int 或 long int 或 short int(十六进制)

    %o —— 同上(八进制)

    %f —— float

    %lf —— double

    %c —— char

    %s —— 字符串

  • 具体用法

    1、printf ("字符串\n")

    注:其中 "\n" 代表换行

    2、printf ("输出控制符\n", 输出参数)

    3、printf ("输出控制符1 输出控制符2 。。。\n", 输出参数1,输出参数2,。。。)

    4、printf ("m = 输出控制符1, p = 输出控制符2 。。。\n", 输出参数1,输出参数2,。。。)

    注:“m =” 和 “p =” 还有 “空格” 为非输出控制符,增加代码可读性

7.2 scanf()的用法

  • 含义

    通过键盘将数据输入到变量中

  • 输入控制符

    同 printf() 的输出控制符一样

  • 具体用法

    1、scanf ("输入控制符", &输入参数)

    注:其中 "&" 代表取地址,比如 &i 就代表变量 i 的地址

    2、scanf ("m输入

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

WackyWay

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

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

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

打赏作者

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

抵扣说明:

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

余额充值