发布时间 : 星期三 文章linux笔记-基础部分更新完毕开始阅读
4.float my_power(float data, int n) {
if(n==0) return 1; else if(n<0) { int i=0; float all=1; for(i=0; i<-n; i++) { all *= data; } return 1/all; }else { int i=0; float all=1; for(i=0; i ----------------------------------------------- 6. sn = 1 (n<=2) Sn = Sn-1+Sn-2 7.int data, num; 16,12 int i=1; int len = (data>num)?num:data; for(i=len; i>1; i--) { if((data%i == 0) && (num%i == 0)) { printf(\ } } --------------------------------------------- 8.char buf[100]; char ch = '0'; 25 int i = 0; while((ch=getchar()) != '\\n') { if(ch != ' ') { buf[i] = ch;i++; } } buf[i] = '\\0'; ============================================================= 2014.07.29 数组指针:int (*p)[n]---p为指针指向一个一维数组,这个数组有n个元素 指针数组: int *p[n]----p数组,数组里面存储的内存是指针(int类型的指针) 指针函数:int *fun(int) --fun本身是函数,返回值是指针 函数指针: int (*fun)(int) ----fun本身是指针,指向的是一个函数函数类型是(一个参数的,和一个返回值的函数) ============================================================= 2014.07.31 作用域 /***main.c*********************/ int a = 0; //全局变量---在整个程序文件中都可以使用 int main(void) { int c = 0; //从此处开始到大括号结束 } int fun(void) { auto int b = 0; int a = 0; //就近原则:出现同名变量时,内部变量会暂时替代全局变量 b = a; //局部变量a } 26 int add(int m) { return a+m; } /*****add.c*************************/ ===================================== 存储类型: 自动:auto ---auto int a = 0;//系统自动分配和释放 静态:static---static int a = 0;//不管是局部或全局存储在数据段,只初始化一次 寄存器:register---register int a = 0;资源少,寄存器变量是不可以用&符取地址 外部:extern-----extern int a;//告诉本文件此变量在其他文件里面以及定过了,直接使用 ------------------------------------- 程序内存分配: 全局变量: 存储在数据段中 局部变量: 存储在栈里 静态变量:存储在数据段中的.data中 动态变量:存储在堆(heap)里 (程序员自己用malloc分配的空间) 常量: 存储在数据段 ---------------------------------------- 结构体 定义 struct 结构体名称{ 结构体成员 }; struct Student ( Student:结构体的标签名) { char name[32]; //结构体成员 float Cscore; float Lscore; float Sscore; }; ---------------------------------------- 定义结构体变量 struct Student stuA={\ // stuA 是结构体变量 struct Student stuA={.name=\成员对应 通过对象名来取结构体成员 char name[32]=\ 27 name = \ //错误,数组除初始化外不能整体赋值 strcpy(name, \ stuA.name=\ //错误,数组除初始化外不能整体赋值 strcpy(stuA.name, \ stuA.Cscore = 99; stuA.Lscore = 98; stuA.Sscore = 100; -------------------------------------- 练习: 定义一个学生结构体:成员包含:姓名,性别,年龄,电话,QQ 写一个程序通过键盘输入数据来初始化最后输出学生所有信息 typedef struct Student { char name[32]; int age; char phone[12]; char qq[11]; char sex; }Student; int main(void) { Student stu; printf(\ printf(\scanf(\ printf(\scanf(\ printf(\ scanf(\ printf(\ printf(\ scanf(\ printf(\ stu.phone, stu.qq); return 0; } ------------------------------------------- 结构体指针: typedef struct Student // typedef 用“Student“来代表“结构体的数据类型” { char name[32]; 28