一、C语言的概念
C语言是一门通用计算机编程语言,广泛应用于底层开发。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。C语言是一门面向过程的计算机编程语言,与C++,Java等面向对象的编程语言有所不同。
二、第一个C语言程序
#include <stdio.h> int main() //main函数是程序的入口,一个程序有且只有一个 { printf("hello bit\n"); printf("he he\n"); return 0; }
三、数据类型
char //字符数据类型 short //短整型 int //整形 long //长整型 long long //更长的整形 float //单精度浮点数 double //双精度浮点数
每种类型的大小(字节)
#include <stdio.h> int main() { printf("%d\n", sizeof(char)); printf("%d\n", sizeof(short)); printf("%d\n", sizeof(int)); printf("%d\n", sizeof(long)); printf("%d\n", sizeof(long long)); printf("%d\n", sizeof(float)); printf("%d\n", sizeof(double)); printf("%d\n", sizeof(long double)); return 0; }
四、变量和常量
常量:不变的值,比如:圆周率,性别等,变量:会发生变化的值,比如:一个人的身高、体重等
4.1 变量定义方法
变量类型 变量名=值
如
int year = 2023; float weight = 45.5f; char ch = 'a';
4.2 变量的命名
只能由字母(包括大写和小写)、数字和下划线( _ )组成;不能以数字开头;长度不能超过63个字符;变量名中区分大小写的;变量名不能使用关键字。
4.3 变量的分类
变量分为全局变量和局部变量。
#include <stdio.h> int global = 2019;//全局变量 int main() { int local = 2018;//局部变量 int global = 2020;//局部变量,当局部变量和全局变量重名时,优先使用局部变量 printf("global = %d\n", global); return 0; }
4.4 变量的作用域和生命周期
作用域:是程序设计概念,通常来说,一段程序代码中所用到的名字并不总是有效的,而限定这个名字的可用性的代码范围就是这个名字的作用域。
局部变量的作用域是变量所在的局部范围,全局变量的作用域是整个工程。
变量的生命周期指的是变量的创建到变量的销毁之间的一个时间段。局部变量的生命周期是进入作用域生命周期开始,出作用域生命周期结束;全局变量的生命周期是整个程序的生命周。
4.5 常量
常量分为字面常量、const修饰的常变量、#define定义的标识符常量和枚举常量。
#include <stdio.h> enum Sex { MALE, //枚举常量 默认是从0开始,依次向下递增1 FEMALE, //枚举常量 SECRET //枚举常量 }; int main() { 3.14; //字面常量 1000; //字面常量 const float pai = 3.14f; //pai是const 修饰的常变量 //pai = 5.14;//不能直接修改的! //#define的标识符常量 #define MAX 100 printf("max = %d\n", MAX); //枚举常量 printf("%d\n", MALE); printf("%d\n", FEMALE); printf("%d\n", SECRET); return 0; }
五、字符串和转义字符
5.1 字符串
"hello world"
这种由双引号(Double Quote)引起来的一串字符称为字符串字面值,简称字符串。字符串的结束标志是一个 \0 的转义字符。在计算字符串长度的时候 \0 是结束标志,不算作字符串内容。
#include <stdio.h> int main() { char arr1[] = "bit"; char arr2[] = {'b', 'i', 't'}; char arr3[] = {'b', 'i', 't', '\0'}; printf("%s\n", arr1); printf("%s\n", arr2); printf("%s\n", arr3); return 0; }
5.2 转义字符
转义字符就是转变意思。
#include<stdio.h> int main() { printf("%c\n", '\''); printf("%s\n", "\""); return 0; }
六、注释
代码中有不需要的代码可以直接删除,也可以注释掉;代码中有些代码比较难懂,可以加一下注释文字。
注释可分为单行注释和多行注释。
int Add(int x, int y) { return x + y; } /* 多行注释 int Sub(int x, int y) { return x-y; } */ int main() { //int a = 10; 单行注释 //调用Add函数,完成加法 printf("%d\n", Add(1, 2)); return 0; }
七、选择语句
一个操作有不同结果就有了选择。
int main() { int coding = 0; scanf("%d", &coding); if (coding == 1) { printf("goodmorning\n"); } else { printf("googafter\n"); } return 0; }
八、循环语句
一个操作重复进行,构成循环,循环有三种:while;for;do...while
先简单介绍while循环
int main() { int sum = 0,i=1; while (i <= 100) { sum = sum + i;//sum+=i; i++; } printf("%d\n",sum); return 0; }
九、函数
函数的特点就是简化代码,代码复用。
int Add(int x, int y) { return x + y; } int main() { int sum = Add(1, 2); printf("%d\n",sum); return 0; }