课堂笔记3

一、循环

for(表达式1;表达式2;表达式3)

表达式1:初始化,只执行一次;表达式2:判断条件,结束条件,没有结束条件会出现死循环。

初始化——>判断条件——>执行for内语句,表达式3——>条件判定

逗号表达式:先执行表达式1,后执行表达式2,最终结果为表达式2

continue:  作用为结束本次循环,即跳过循环体中下面尚未执行的语句,接着进行下一次是否执行循环的判定

break:可以用来从循环体内跳出循环体,即提前结束循环,接着执行循环下面的语句

注意:break语句不能用于循环语句和switch语句之外的任何其他语句中

二、数组

(1)一维数组

一维数组的定义格式为:类型说明符  数组名[常量表达式];

 数组在内存中是连续的,例:float a[100],每个float类型占4个字节,数组a中有100个元素,所以数组a占400个字节。

在定义数组时对数组元素赋以初值。例如:int a[10]={0,1,2,3,4,5,6,7,8,9};

可以只给一部分元素赋值。例如:  int a[10]={0,1,2,3,4};    
定义a数组有10个元素,但花括弧内只提供5个初值,这表示只给前面5个元素赋初值,后5个元素值为0。

在对全部数组元素赋初值时,由于数据的个数已经确定,因此可以不指定数组长度。例如:int a[5]={1,2,3,4,5};
也可以写成  int a[]={1,2,3,4,5};  

重点:a表示数组首元素地址,a+1表示下一个元素的地址,步长为一个元素;

&a数组地址,&a+1下一个数组,步长为一个数组

求数组长度:sizeof(a) / sizeof(a[0])

int main()

{

 int a[4]={0};

printf("%d\n", sizeof(a));

printf("%d\n", a);

printf("%d\n", &a);

printf("%d\n", a+1);

printf("%d\n", &a+1);

return 0;

}

例:冒泡排序

#include <stdio.h>

#define SIZE 5

{

int i, j, t;

int a[SIZE];

printf("please input numbers:\n");

for(i = 0; i < SIZE; i++)

scanf("%d", &a[i]);

for(i = 0; i < SIZE-1; i++)

 for(j = 0; j < SIZE - i - 1; j++)

{

 if(a[j] < a[j-1])

{ 

t = a[j];

a[j] = a[j-1];

a[j-1] = t;

}

}

}

(2)二维数组

4种方法对二维数组初始化:

分行给二维数组赋初值。例如: int a[3][4]={{1,2,3,4},{5,6,7,8},  {9,10,11,12}}; 

可以将所有数据写在一个花括号内,按数组排列的顺序对各元素赋初值。

例如:int a[3][4]={1,2,3,4,5,6,7,8,9,10,11,12};

可以对部分元素赋初值。
例如: int a[3][4]={{1}, {5}, {9}};也可以对各行中的某一元素赋初值,如int a[3][4]={{1}, {0,6}, {0, 0, 0, 11}}; 

如果对全部元素都赋初值,则定义数组时对第一维的长度可以不指定,但第二维的长度不能省。
例如:int a[3][4]={1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12};等价于:int a[ ][4]={1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12};

重点:

①a:表示首行地址,a+1加一行;

②&a数组地址,&a+1加一个数组;

③a[0]首元素地址,a[0]+1加一个元素;

④*a:(=a[0]),a[0]+1:(=*a+1)

表示地址a[1] = *(a+1)

(3)字符数组

为了测定字符串的实际长度,C语言规定了一个“字符串结束标志”——‘\0’

字符数组的输入输出可以有两种方法:
逐个字符输入输出。用格式符“%c”输入或输出一个字符
将整个字符串一次输入或输出。用“%s”格式符,意思是对字符串的输入输出

说明:
用“%s”格式符输出字符串时,printf函数中的输出项是字符数组名,而不是数组元素名
如果数组长度大于字符串实际长度,也只输出到遇′\0′结束
输出字符不包括结束符′\0’
如果一个字符数组中包含一个以上′\0′,则遇第一个′\0′时输出就结束
可以用scanf函数输入一个字符串

例:在字符串指定位置插入字符

#include <stdio.h>

#include <string.h>

#include <stdlib.h>

{

 char a[20] = {0};

char x;

int num, i, length;

printf("input :\n");

scanf("%s%d %c", a, &num, &x);

length = strlen(a);

if(num <= 0 || num > length)

{

 printf("ERROR!\n");

exit(1);

}

 for(i = 0; i< SIZE - num +1; i++)

 {

  a[SIZE - i] = a[SIZE - i - 1];

}

a[num -1] = x;

printf("%s\n", a);

return 0;


字符串处理函数:

strcat(str, ptr)将字符串ptr连接到str后;

strcpy(str, ptr)将ptr复制到(覆盖) str,'\0'也被复制过去;

注:(1)字符数组1必须定义得足够大,以便容纳被复制的字符串,字符数组1的长度不应小于字符串2的长度

(2)“字符数组1”必须写成数组名形式(如str1)

(3)不能用赋值语句将一个字符串常量或字符数组直接给一个字符数组。如:str1=″China″;  不合法    str1=str2; 不合法
用strcpy函数只能将一个字符串复制到另一个字符数组中去;用赋值语句只能将一个字符赋给一个字符型变量或字符数组元素。

“字符串2”可以是字符数组名,也可以是一个字符串常量如:strcpy(str1,″China″); 

strcpy(str, ptr, n)只复制ptr中n个字符过去;

strcmp(str, ptr)比较字符串1和字符串2

如果str=ptr,strcmp(str,ptr)为0; str>ptr,函数值>0;如果str<ptr,函数值<0

三、函数

步骤:通过函数名找到函数入口地址;为形参分配空间;传值(值传递、地址传递);执行函数体;返回;释放空间

Linux执行程序时,为每个进程分配4个G虚拟空间:内核态1G,用户态3G,用户态中有数据段:存放全局变量、被static修饰的

变量,其中BBS存放静态未初始化变量;代码段:存放代码和常量;栈空间:局部变量;堆空间:程序员向内存申请空间malloc

①寄存器变量:register int x;说明变量x不放在内存中,放在寄存器中;寄存器变量不能取地址;对于使用频繁的变量,可以使用

register声明为寄存器变量,其值存储在CPU中,加快了运行速度

②用static修饰的变量:

static修饰全局变量,改变全局变量作用域,该变量只能在本文件中使用,不能在其他文件中使用

static修饰函数,改变函数作用域,函数只能在本文件中被调用

static修饰局部变量,改变变量生命周期,只初始化一次,知道程序运行结束才被释放

预处理:

①文件包含:#include  "stdio.h"  在当前目录和TC指定的目录中找该文件,自定义头文件

#include  <stdio.h> 在由TC指定的文件目录中找该文件

②使用预处理注销代码

#if 0

……

#endif

③宏函数:#define OUT printf("hello\n")

   


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
蛋白质是生物体中普遍存在的一类重要生物大分子,由天然氨基酸通过肽键连接而成。它具有复杂的分子结构和特定的生物功能,是表达生物遗传性状的一类主要物质。 蛋白质的结构可分为四级:一级结构是组成蛋白质多肽链的线性氨基酸序列;二级结构是依靠不同氨基酸之间的C=O和N-H基团间的氢键形成的稳定结构,主要为α螺旋和β折叠;三级结构是通过多个二级结构元素在三维空间的排列所形成的一个蛋白质分子的三维结构;四级结构用于描述由不同多肽链(亚基)间相互作用形成具有功能的蛋白质复合物分子。 蛋白质在生物体内具有多种功能,包括提供能量、维持电解质平衡、信息交流、构成人的身体以及免疫等。例如,蛋白质分解可以为人体提供能量,每克蛋白质能产生4千卡的热能;血液里的蛋白质能帮助维持体内的酸碱平衡和血液的渗透压;蛋白质是组成人体器官组织的重要物质,可以修复受损的器官功能,以及维持细胞的生长和更新;蛋白质也是构成多种生理活性的物质,如免疫球蛋白,具有维持机体正常免疫功能的作用。 蛋白质的合成是指生物按照从脱氧核糖核酸(DNA)转录得到的信使核糖核酸(mRNA)上的遗传信息合成蛋白质的过程。这个过程包括氨基酸的活化、多肽链合成的起始、肽链的延长、肽链的终止和释放以及蛋白质合成后的加工修饰等步骤。 蛋白质降解是指食物中的蛋白质经过蛋白质降解酶的作用降解为多肽和氨基酸然后被人体吸收的过程。这个过程在细胞的生理活动中发挥着极其重要的作用,例如将蛋白质降解后成为小分子的氨基酸,并被循环利用;处理错误折叠的蛋白质以及多余组分,使之降解,以防机体产生错误应答。 总的来说,蛋白质是生物体内不可或缺的一类重要物质,对于维持生物体的正常生理功能具有至关重要的作用。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值