C语言
<1>变量
# include<stdio.h> //头文件
int main(){
int a;
scanf("%d",&a);
printf("%d\nhello,world!",a);//\n换行,\t等等一些操作符
return 0;
}
基本组成:头文件,函数,变量,语句&表达式;
本案例主讲变量
变量:变量名 a;存地址 &a;值 %d or else ;
scanf 输入时,是将输入的值,存入a的地址中。
【在内存中,只有地址和值,变量名其实就是地址的一种简称】
1.变量值的种类:
基本【数字,字符,浮点】,
构造【指针,数组,枚举,结构体,共用体】
1)基本:数字【整数int 小数 float(double) 】
字符【char 字符串string】
2)指针 基础 int *p p=&a; int *p=null;
存储的地址种类:数组首地址,另一个指针的地址。
3)数组 一维: a[10]={1,2,3,4,5}; a[0]=1;
二维:数组的数组,
a【2】(父)【2】(子)={{1,2},{2,3} };
a【1】[2]=2;
指针数组 *arr[10];
4) 枚举 枚举与宏定义
宏定义:#define MON 1
#define TUE 2
(声明和定义 为什么要声明和定义?声明和定义是是什么?)
如同上课需要举手发言一样,是一种规范,先举手(声明),在发言(定义这个东西是什么)
枚举: enum DAY{MON=1,TUE}; day;//默认后续依次加一 (类似于类)
5)结构体 struct : typedef struct books
{ char title[50];char author[50];char subject[100]; int book_id ;}books;
6)共用体 union 允许在相同的内存位置存储不同的数据类型,你可以定义一个带有多成员的共用体,但 是任何时候只能有一个成员带有值。
2.作用范围:全局(函数体外)与局部(函数体内)
<2>修饰符
(要想理解好这里需要了解操作系统的内存管理,计算机的组成中的内存)
1)基础修饰符: signed unsigned(有无符号)long,short(字节的长短)
2)存储修饰符:
auto(自动),register(寄存),static(静态),extern ,const(常量)
其他关键字:sizeof(获取变量字节长度) typedef(为类型取一个新的名字)一般结合结构体用
<3>语句与控制流
1)语句:对变量进行的操作 ,常见操作为:计算,调用函数。本案例主讲计算
计算的对象:数字,字符,指针,数组
计算的种类:基础计算【1(自),2(四则运算,类型转换),3( 三目运算符 ? :;)】关系运算【比大小】
逻辑计算【&& || !】
类型转换本质: double a=6.777;
int b=(double)a;(新建了一个变量存上个变量值而已)
强调:三目运算符是一种简单的if语句
三目运算符 问题是否成立 ?成立则 **:**否则 ;
if选择语句 if(问题是否成立)成立则 ; 否则 ;
2)控制流:语句的帮手,
种类:选择【if ,switch】 循环【while() for (; ; )】
优缺点 选择:if语句适用于分支少的语句 ;switch语句适用于分支多的语句(结合break和continue用)
循环:for循环是while的升级版
通用:嵌套的逻辑
<4>函数
为什么需要函数?在主方法里抽取具有共同特点的可以重复使用的语句,变成一个方法,以便重复使用。
声明和定义:
为什么要声明和定义?声明和定义是是什么?
如同上课需要举手发言一样,是一种规范,先举手(声明),在发言(定义你要说的东西)
声明 :int max(int ,int);
定义: 返回值类型(int, void…) 函数名(需要参数){ return }
调用: 函数名(a);
重点:函数的参数
指针和数组
# include<stdio.h>
int sum(int *,int );
int main(){
int a[5]={1,2,3,4,5};
int result;
result =sum(a,5);
printf("%d",result);
}
int sum(int *a,int lenth){
int i,s=0;
for(i=0;i<lenth;i++){
s +=a[i];
}
return s;
}
<5>预处理器与文件
使用 #include(预处理命令) + <stdio.h>or “stdio.h”(文件)
预处理器:#define #include
文件:
<反思>这些出现是为了解决哪类问题的?比如结构体,共用体的运用(基础运用,高级运用等等)
(在哪知道这些?)
先来些简单代码
未完待续