大家好,我是小潘。为了下定决心学好C语言,我准备写博客,用来鼓励自己,在这条路上走下去。多去总结,多去学习,希望自己能坚持下去。平常我会把学习的笔记写在博客上,如有不足的地方,望大家批评指正,谢谢。
一、C语言重点
什么是C语言
第一个C语言程序
数据类型
变量、常量
字符串+转义字符+注释
选择语句
循环语句
函数
数组
运算符
常见关键字
define定义常量和宏
指针
结构体
二、初步了解C语言
1、什么是C语言?
计算机语言:是人和计算机交流的语言
C语言是一门通用的计算机编程语言,广泛应用于底层软件开发。C语言的设计目标是提供一种能以简单的方式编译,处理低级存储器,产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。
国际标准:ANSIC C语言最初的标准。
2、第一个C语言程序
# include <stdio.h> //包含一个头文件 int main() //主函数,程序的入口,有且只有一个 { int s,a,c; //定义整型变量 scanf("d%d%", &a, &c); //输入两个数字 s = a + c; //计算两个数字之和s printf("%d\n",s); //打印一个十进制整数 return 0; }
3、数据类型
1.基本类型:
char 字符型
short 短整型
int 整型
long 长整型
float 单精度型
double 双精度型
2.构造类型:
数组类型 a[5]
结构体类型 struct
共用体类型 union
3.指针类型:
以字节为单位的存储类别,编号--地址,内容--值
4.枚举类型:
enum
、变量、常量
常量:C语言中不变的值(身份证号码,圆周率,血型,性别)
变量:C语言中改变的值(年龄,薪资,体重)
5、字符串+转义字符+注释
字符串:以‘/0’为结尾的字符数组。
转义字符:‘\’反斜杠字符常量也称为转义字符。
\a 报警
\f 走纸
\n 换行 输出时,光标移动到下一行行首
\b 退格 输出时,光标移动到前一格
\r 回车 输出时,光标回到本行行首
\t 水平制表符 输出时,跳到下一个单元格
\v 垂直制表符
\\ 反斜杠\
\‘ 单引号‘
\“ 双引号“
\ddd 八进制值 1~3位八进制数字
\xhh 十六进制值 1~2位十六进制数字
注释
1.单行注释:
用//来表示:可以写在任何一行代码前。
2.多行注释:
用/**/来表示:可以写在任何一行代码前,不能和单行注释嵌套使用。
6、选择语句
switch;if。
7、循环语句
while;do—while;for;go to。
8、函数
函数是独立的具有特定功能的程序模块;
程序的“细化”开发方式使程序更容易管理,提高程序的可读性;
避免了在程序中使用重复代码;
一个程序可由一个主函数和若干个其他函数组成;
程序执行时从main函数开始,根据需要,main函数调用其他函数,其他函数也可以相互调用,其他函数不能调用main函数;
同一个函数可以被一个或多个函数调用任意次数,最后由main函数结束运行。
#define _CRT_SECURE_NO_WARNINGS 1 #include <stdio.h> int main() //函数类型 函数名(参数表) //函数头 { printf("haha\n"); // 数据说明 执行语句 //函数体 return 0; }
9、 数组
格式:类型说明符 数组名[常量表达式]。
数组是数目固定,类型相同的若干变量的有序集合;
数组中的每一个变量称为数组元素,属于同一个数据类型;
数组在内存中占有一段连续的存储空间。
10、运算符
运算符的优先级和结合性
优先级 运算符 含义 参加运算的对象个数 结合方向
1 [] 数组下标 自左到右
() 圆括号
.;-> 成员运算符;成员选择操作符
2 ! 逻辑非运算符 1 自右到左
~ 按位取反运算符
++ 自增运算符
-- 自减运算符
- 负号运算符
(类型) 强制类型转换运算符
* 指针运算符(间接访问操作符)
& 取地址运算符
sizeof 长度运算符(计算字节长度)
3 * 乘法运算符 2 自左到右
/ 除法运算符
% 求余运算符
4 + 加法运算符 2 自左到右
- 减法运算符
5 << 左移运算符 2 自左到右
>> 右移运算符
6 < <= > >= 关系运算符 2 自左到右
7 == 等于运算符 2 自左到右
!= 不等于运算符
8 & 按位与运算符 2 自左到右
9 ^ 按位异或运算符 2 自左到右
10 | 按位或运算符 2 自左到右
11 && 逻辑与运算符 2 自左到右
12 || 逻辑或运算符 2 自左到右
13 ? : 条件运算符 3 自右到左
14 = += -= *= 赋值运算符 2 自右到左
/= %= >>=
<<= &= ^= |=
15 , 逗号运算符(顺序求值运算符) 自左到右
11、常见关键字
C语言常见32个关键字
auto break case char continue default do double else enum extern
float for go to if int long regist return short signed sizeof
static struct switch union typedef unsigned void volatile while const
12、define定义常量和宏
格式:#define 宏名(形参表) 字符串
#define _CRT_SECURE_NO_WARNINGS 1 #include <stdio.h> #define m(a,b) a*b #define n(a,b) (a)*(b) int main() { int x, y; x = m(1 + 1, 2 + 2); //1+1*2+2 y = n(1 + 1, 2 + 2); //(1+1)*(2+2) printf("%d,%d", x, y); return 0; }
13、指针
在程序中定义了一个变量,该变量在内存中占用一定的存储单元,这个空间的大小由变量的类型决定。
指针:就是变量的内存地址,是个常量。
指针变量:就是存放另一变量地址(指针)的变量。
当把变量i的地址存入指针变量p后,我们就说这个指针变量p指向变量i。
如:
int i=10,*p;
p=&i;
14、结构体
结构体是一种构造类型的数据类型;
结构体是由数量固定、类型不同的若干变量、数组或其他构造体的有序集合;
结构体与数组的区别在于结构体内允许有不同类型的数据。
结构体类型定义的格式:
struct 结构体名
{
类型说明符 成员1;
类型说明符 成员2;
类型说明符 成员3;
};
说明:
同一结构体的成员不能同名;
不同结构的成员可以同名,不互相冲突;
结构中的成员名可以和程序中的变量名同名。
这是我的第一篇文章,如有不足,请多多指教。
谢谢