一、怎么学好编程
1、我们首先要知道学好编程,不是学好C语言就可以了
2、那怎么学好编程了?
那我们就要必须学好:计算机语言(C\C++\Java等)、算法和数据结构、操作系统、计算机网络、数据库-mysql、项目实战
3、刷题有牛客网、洛谷等
二、本次重点
1、什么是C语言
(1)C语言是一门计算机编程语言
例:汉语、英语、日语等————是人和人交流的语言
什么是计算机编程语言呢?————是计算机语言
计算机语言:人和计算机交流的语言(如C\C++\Java\go等)
(2)C语言的应用领域(广泛应用于底层开发)
应用领域:1、系统软件开发2、应用软件开发
(3)语言的发展
① 计算机能够识别的是二进制!(二进制:0-1)
例如:00000001101001111
②汇编语言(助记符)
例如:ADD---100001
SUB---000101
③各种C————C标准
C1
C2 国际标准——有C89(ANSI C)/C90(ISO)
.... C99/C11,现并不流行
④总的来说:程序语言发展历史
第一代语言:机器语言(二进制)
第二代语言:汇编语言(助记符)
第三代语言:
2、第一个C程序
(1)如何写一个c程序?
vs2019/2022集成开发环境(IDE - 集成开发环境 - 编辑器 + 编译器 + 调试器)
①创建一个项目(工程)
步骤一:
步骤二:
步骤三:
如果解决方案资源管理器没看到,执行以下操作
②创建源文件
写代码的时候,我们把代码放在文件中
.h header头文件
.c 源文件
平常一般会把代码放在.c文件
步骤一:
步骤二:
③写代码
写代码的框架
如图:
讲解:
(1)main
main叫主函数,主函数是程序的入口
C语言代码中必须有主函数,但是有且仅有一个main函数
一个项目(工程)中可以有多个.c文件,但是多个.c文件只能有一main函数 (创多个.c文件的意义:负责不同模块)
如下图,main就在一个工程中多次定义发生了错误
扩展:main函数的不同版本(看不看都行)
void main()//旧写法,不建议
int main(void)//void写在这里表示main函数不需要参数
int main(int argc ,char argv[])
(2)怎么写一个C程序,在屏幕上打印hello,Word呢?
(3)printf——输出格式函数(打印函数)
专门用来在屏幕上打印数据的
是C语言标准库中提供的一个库函数(是别人的———使用是打招呼)
(4)#include(预处理包含stdio.h这个头文件)
#——预处理
include——包含
stdio.h——标准输入输出头文件,std-standard标准 i-input输入 o-output输出
3、数据类型
(1)内置数据类型:(内置类型就是语言自身定义的类型)
char //字符数据类型
short //短整型
int //整形
long //长整形
long long //更长的整形
float //单精度浮点型
double //双精度浮点型
//C语言有没有字符串类型?
答案是:C语言没有字符串类型,但是可以使用字符数组或字符指针来表示
①每种类型的大小是多少?
//sizeof-关键字-操作符-计算类型或变量所占内存的大小
单位:字节
tip:计算机常见单位
bit-比特位(二进制1,0存放的内存就是一个bit;即一个bit存放一个二进制)
byte-字节=8bit
kb-1024byte
mb-1024kb
gb-1024mb
tb-1024gb
pb-1024tb
注:C标准sizeof(long)>=sizeof(int)
②为什么出现这么多得类型?
选择类型多,提高空间利用率
注意:存在这么多的类型,其实是为了更加丰富的表达生活中的各种值。
类型的使用:(用来创建变量 )
4、变量、常量
生活中有些数据不能变(如:血型、性别、圆周率等)
有些数据是可变的(如:年龄、体重、工资等)
不变的值, C 语言中用 常量的概念来表示,变得值C 语言中用 变量 来表示
(1) 定义变量的方法(先定义,后使用)
变量定义的一般形式:
类型说明符 变量名标识符1,变量名标识符2........;
int age = 150 ; float weight = 45.5f ; char ch = 'w' ;//创建变量ch,并给一初始量 注:int age;//不是好的习惯,好的习惯是:在创建变量的同时给一个初始值
(2)变量的命名(遵循标识符命名的规则)
只能由字母(包括大写和小写)、数字和下划线( _ )组成。不能以数字开头。
长度不能超过 63 个字符。
变量名中区分大小写的。
变量名不能使用关键字。
(3) 变量的分类
①局部变量-----在{}内部定义
②全局变量----在{}外部定义
tip:当局部变量和全局变量名字冲突的时候,局部优先;建议大家尽量不要冲突
今天就写到这,后续继续更新。