C 补充材料

发布 2021-11-28 07:47:28 阅读 4172

生成目标**过程。

编译(compiler 编译程序):

语法分析查错,翻译生成目标程序文件(.obj文件,机器语言,函数**未链入,不可执行),并记忆函数的名字和位置;

连接(linker 连接程序):

与其它目标程序**(.obj)或从标准函数库(.lib)中找到的库函数目标**连接装配,生成可执行程序(.exe 机器语言,函数**已连入,可执行)。

在c中用到标准库函数时,因为库函数的原型声明放在“.h”文件中;库函数的程序**放在“.lib”中,所以在编程序时要将“#include <>放在程序开头;源程序要经过编译、连接才能生成可执行文件(.

exe)。“exe”文件可在windows操作系统下执行。

上机过程:算法

当面临某个问题时,需要找到用计算机解决这个问题的方法和步骤,算法就是解决这个问题的方法和步骤的描述。算法是一个解决问题的公式(数学公式都是经典算法)、规划、思路、方法和步骤。人没有算法,计算机也无能为力;算法错了,计算机将误入歧途。

算法用计算机程序设计语言描述,就成为计算机程序。

算法的5个重要特征(一个算法是计算机算法,必须满足的5个基本要求)

、确定性。、有效性。

、有穷性。、有0个或多个正确的输入。

、有1个或多个输出。

算法的基本逻辑控制规则及结构模型(设计程序时所能使用的三种结构)

计算机执行程序的流程,也是所有程序的基本结构,分为顺序、分支和循环三种结构模型。计算机的所有程序都是由这三种基本结构组成,这三种结构加上各种数据类型的变量,可以编写丰富多彩的程序,解决各种问题。

程序设计语言的基本成分(设计计算机程序时所能使用的数据、运算符、语句)

1)数据成分,用于描述程序中所涉及的数据。

数据类型(char、int、结构体、类…),用于定义各种类型的变量、数组、对象,或直接用各种类型的常量。数据类型决定了数据占内存空间的大小和数据的取值范围。

2)运算成分,用于描述程序中所包含的运算。

运算符(+、构成各种表达式。

3)控制成分,用于描述程序中的流程控制。

选择结构语句(if、switch语句)、循环结构(for、while、do…while语句)。

4)传输成分,用于描述程序中数据的传输方式,以及人机交互的内容。

输入(scanf())输出(printf())赋值表达式(变量 = 表达式)。

计算机程序的构成。

当用计算机解决一个实际问题时,首先必须针对这个问题进行程序设计。通常在进行程序设计时,应考虑两个方面的问题:

如何合理存取问题中涉及到的数据(数据结构)→ 如何定义程序中的变量。

从程序设计角度看,数据结构最终都用某种数据类型的形式表示出来,如c中的“int、char、float、结构体”等;用数据类型定义各种变量,存储程序中各种数据。

如何描述解题步骤(算法)→ 如何用计算机程序设计语句描述解题步骤。

程序变量的本质(变量就是某个内存单元)

程序中数据存储在内存单元中,但程序员不需要面对存储单元的地址,而是以标识符取代。通常是借用数学语言将存储一个数的内存单元称为变量(因其值在程序运行过程中可以被修改)。变量有两个含义,一个是变量名,表示内存单元的地址;一个是变量值,表示该地址内存单元中所存储的内容。

例、int x = 5;(编译器将2000开始的4个字节分给x,x代表地址为2000内存单元)

x = x + 1;

在内存中分配存放整数的内存单元,用变量x代表该内存单元地址2000。

从变量中取值,实际上是通过变量名x找到该内存单元,从中读取数据;将数据。

送入变量x,实际上是通过变量名x找到该内存单元,将数据存入该单元。所以变。

量要先定义,后使用。

x = x+1执行过程:(赋值表达式:变量名(内存地址) =表达式(值))

赋值号“=”左边用变量名(内存单元地址2000);右边用变量值(内存单元值5)。先通过右边变量x找到它所代表的内存单元,取出该内存单元的内容5,与1相加得6;通过左边变量x找到它所代表的内存单元,将计算结果6送入该内存单元,内存单元原来的内容5被覆盖,内容变为6。

程序表达式本质(程序的表达式就是一个值)

由运算符、常量、变量和函数组成,可计算出一个明确的值。算术表达式就是数学中的算式,运算结果为数值;关系和逻辑表达式用于判断,运算结果为逻辑值“1(真)”或“0(假)”。

运算符与操作数连用,组成表达式。如a/b(运算符/,操作数a、b)。学习运算符时注意运算符要求参加运算的各操作数的类型(如%要求两个操作数都是整型,即int a, b; 则a%b正确;但float a, b; 则a%b错误)、运算符优先级别、结合方向、运算结果的数据类型。

记忆p378附录d运算符优先级和结合方向。

结合方向决定当运算符的优先级相同时,那个运算符先运算。如-i++,因单目运算符“-”与“++优先级相同,如结合方向从左向右-i++→i)++如结合方向从右向左-i++→i++)注意:结合方向从右向左的有“单目运算符、赋值运算符和条件运算符”

大部分运算符的运算规则与数学中的相同,只有记住特殊的即可。注意,括号“( 可改变优先级。

算术表达式运算易错点。

只能用于变量i++或++i;不能用于常量和表达式,如:5++,a+b)++是错误的。

运算符在操作数之前(++x),先运算+1或-1操作后,再引用变量x的值;运算符在操作数之后(x++)先引用变量x的值,再运算+1或-1操作。比较:

j=5, k=5; y = j+++k;

编译程序从左向右扫描表达式y=j+++k → y=(j++)k; →y=j+k; j++;y=8, j=6, k=3

y = j+ +k;

注意+与++之间有空格,即表达式y=j+++k→y=(j++)k与y=j+ +k→y=j+(+k); 不同)

y=j+ +k → y=j+(+k); k++;y=j+k; →y=9, j=5, k=4

i=5, j=5; y = i+ +j;

注意:+与++间一定要加空格,否则编译时出语法错。因编译器从左向右扫描表达式++i+++j时,得到3个操作符++、和+,由于++结合方向从右向左,所以第二个++先运算++i+++j → i++)j,而++i++→i++)i=i+1)是错误的。

加空格后,第二个++的操作数是j。第一个++操作数是i)

y=++i+ +j → y=(+i)+(j); i++;j++;y=i+j; →i=6, j=6, y=12

i=5, j=5; y = i+j++;

y=++i+j++ y=(+i)+(j++)i++;y=i+j; j++ i=6, j=6, y=11

i=5; y=-i++;

与++优先级相同,但结合方向从右向左 y=-i++ y=-(i++)y=-i; i++;y=-5, i=6

i=5; y=-+i; →y=-(i) →i++;y=-i; →y=-6, i=6

但y=++i即y=++i即y=++i)编译出错,因++、只能用于变量i,不能用于表达式-i

数据类型自动转换

c表达式中不同类型数据进行运算,要先自动转换为同一类型,再进行运算。类型转换由系统自动完成,用户的任务是写出正确的表达式。什么情况下发生转换:

运算转换 --表达式中不同类型数据混合运算时,先转换为同一。

类型,再进行运算,运算结果为转换后的类型。

赋值转换 --把表达式赋给与其类型不同的变量时,先计算右边。

表达式的值,赋值时再将其转换为左边变量的类型。

输出转换 --输出时转换成指定的输出格式。

设 x=2.5, a=7, y=4.7,求x+a%3*(int)(x+y)%2/4的值。

x+a%3*(int)(x+y)%2/4 = 2.5+7%3*(int)(2.5+4.7)%2/4

5/2 = 2(int/int得int,表达式运算时数据类型为int,结果是int)

5.0/2 = 2.5 ((float→double) /int→double)得double,

表达式运算时数据类型是double,结果为double)

short int x=32767, z; int y ;

z=x+1;(int+int→short int)因short(-32768~32767),赋值时发生溢出z=-32768错误(注意:运算时的数据类型是(int+int),并未发生溢出,溢出是在赋值时(int→short)发生)

y=x+1;(int+int → int)因int(-231~231-1),赋值后结果正确,得y = 32768

注意:0 ~ 255既可看成int数值,也可看成char字符(‘e’-‘a’+‘a’=101- 97+65= 69或‘e’)

char c1; int c2;

c1 = 1 + a’; int + char→int)=int → char,∴c1= ‘b’ 字符b)

c2 = 1 + a’; int + char→int)=int → int,∴c2= 98 字符b的ascii码值)

cout

c1 = 256 + a’; int + char→int)=int 353 → char 97,∴c1= ‘a’ 字符a)

c2 = 256 + a’; int + char→int)=int 353 → int 353,∴c2= 353)

汇报材料补充材料

一 管理制度 人员配备 现场管理 过程控制 标准化推 况。项目部始终坚持 以人为本 和细节管理的管理理念,不断建立健全各项管理制度,不是用人来管人,而是用好的 实用的制度来管理员工。我们在管理过程中实行两手抓 一手抓人,一手抓现场,并紧紧围绕这两大主题大做文章,规范人的行为,控制物的不安全状态,积极...

材料作文补充

建议 1.现在的初中老师很少有能够品鉴诗歌的。2.字数和格式就会与评判体制有冲突。3.按照新教材的语文教材的培养目标,一般初中生所要求的作文类型 有命题作文,半命题作文,条件作文,材料作文,读后感,看图作文,不要求诗歌,教材中的诗歌学习目的只是理解,也没有写诗歌的训练。4.不同老师对诗歌的理解能力和...

档案材料补充

10 校本课程开发前期论证资料。11 校本课程教材 课程纲要 校本课程教案。12 校本课程申批表。13 学校校本课程管理方面的资料 包括领导听评课 教研活动 检查档案 老师反思 学生成果等。14 关于校本课程开发的其它资料。b3 课程评价。学生用书目录 每学期 学校课程评价机制。定期评价相关记录。学...