第一天
C语言特点:
- 语言简洁、紧凑。使用方便、灵活。
- 运算符丰富。
- 数据类型丰富。
- 具有结构化的控制语句。
- 语法限制不严格,程序设计自由度大。
- C语言允许直接访问物理地址,能进行位(bit)操作,能实现汇编语言的大部分功能,可以直接对硬件直接操作。
- 用C语言写的程序可移植性好。
- 生成目标代码的质量高,程序执行效率高。
概念
| %d | 打印整型十进制格式的数据 | | —- | —- | | %f | 打印浮点型格式的数据(打印小数) | | %c | 打印字符格式的数据 | | %p | 以地址的形式进行打印 | | %x | 打印16进制数字 | | /n | 换行 | | 库函数 | C语言提供给我们使用的函数,使用#include来引入 | | main()函数 | 程序的入口,有且只有一个 | | char | ‘A’,字符类型; | | 数据类型 | 用于向计算机内存中申请一片存储空间 | | 变量 | 局部变量(代码块内的变量),全局变量(定义在代码块外的变量);局部变量和全局变量不要相同,若相同,则和局部变量优先。 | | 计算机中的单位 | bit(比特位)byte(字节)kb mb gb tb pb | | bit(比特位) | 计算机中最小的单位,用于存放二进制。记录计算机的通电状态 | | byte(字节) | 1byte = 8bit | | kb | 1kb = 1024byte | | 输入函数scanf() | scanf(“%d%d”,&numb1,&numb2)//将输入的链各个数值放入numb1和numb2中; | | 输出函数printf() | printf(“%d%d”,numb1,numb2)//将numb1和numb2的值输出到控制台 | | extern | 声明外部变量 | | 数据类型 | 整型、浮点型、void型、enum枚举、指针类型、数组类型、结构体类型、共用体类型、函数类型、 | | 基本整型int | (开辟4个字节 232-1) | | 短整型short int | (开辟2个字节,2^16^ ) | | 长整型 long int | (开辟4/8个字节) | | 字符型 char | (开辟1字节) | | 单精度浮点型 float | (开辟4个字节) | | 双精度浮点型 double | (开辟8个字节) |
代码练习
#include<stdio.h>//这是编译预处理指令int main()//定义主函数,函数类型为整型{//函数开始的标志printf("你好,岩哥\n");//输出所指定的一行信息return 0;//函数执行完毕时返回函数值0}//函数结束的标志
#include<stdio.h>int main(){int a = 123;int b = 123;int sum = a+b;//%d表示,输出一个整型的结果printf("a+b= %d",sum);return 0;}
#include<stdio.h>int main(){int a = 5;int b = 4;//事先定义好自定义函数int max(int x,int y);printf("最大值为:%d",max(a,b));return 0;}int max(int x,int y){if(x>y){return x;}else{return y;}}
注意:这里的1/3 = 0; 1.0/3 = 0.333……#include<stdio.h>int main(){float a;float b;float c;a = 1.0/3;c = 33;b = a*(c-32);printf("最终计算结果为:%f\na的值为:%f\nc的值为:%f",b,a,c);return 0;}
第二天
概念
| /t | 水平制表符 |
|---|---|
| / | 转义字符 |
1、常量
- 普通常量
const修饰的常量
//const修饰的常变量,类似于java中的final#include<stdio.h>int main(){const int num = 4;printf("%d\n",num);num = 8;printf("%d\n",num);return 0;}
define定义的标识符常量
#include<stdio.h>#define MAX 10int main(){printf("%d\n",MAX);return 0;}
枚举常量
#include<stdio.h>//枚举常量enum sex{body,gril,secret};int main(){enum sex s = body;printf("%d\n",s);return 0;}
2.字符串
‘\0’:是字符串结束的标志,在计算字符串的长度的时候\0是结束标志,不算作字符串内容
- 一些字符对应一些ASCII码,如:(a:97)、(\0:0)、(A:65)……
- strlen()函数:用来计算字符串长度的函数 ```c
include
//使用srtlen函数需要引入字符串头文件
include
int main(){ char arr1[] = “abc”; printf(“arr1 = %d\n”,strlen(arr1));//输出3 char arr2[] ={‘a’,’b’,’c’}; printf(“arr2 = %d\n”,strlen(arr2));//输出随机值,因为没有\0 return 0; }
<a name="E9Ri5"></a>#### 3.选择语句```c#include<stdio.h>int main(){int input;printf("你想好好学习吗?(1/0)>:");scanf("%d",&input);if(input == 1){printf("你将走上人生巅峰");}if(input == 0){printf("回家卖红薯吧");}return 0;}
4.循环语句
#include<stdio.h>int main(){int a = 0;while(a<10){a++;printf("执行了%d\n",a);}printf("执行完了");return 0;}
5.循环遍历数组
#include<stdio.h>int main(){int i = 0;int arr[10] ={1,2,3,4,5,6,7,8,9,10};while(i<10){printf("数组的内容%d\n",arr[i]);i++;}printf("执行完了");return 0;}
6.算术运算符
#include<stdio.h>int main(){int a = 7;int num = 7%3;printf("取余运算结果为:%d",num);return 0 ;}
#include<stdio.h>int main(){int b = 1;//整型1站4个字节,32个bit位//00000000 00000000 00000000 00000001//将1向左或者右移1位或几位printf("左位移结果为:%d\n",b<<2);printf("右位移结果为:%d\n",b>>2);return 0 ;}
三目运算符
