main函数中最后输出的a的值应为f(0)的值+f(1)的值+f(2)的值,原因是循环变量i的值只能是0,1,2,当i的值为3的时候循环就结束了,a原来是0.0,在循环中是累加
公司主营业务:成都网站建设、成都网站制作、移动网站开发等业务。帮助企业客户真正实现互联网宣传,提高企业的竞争能力。创新互联公司是一支青春激扬、勤奋敬业、活力青春激扬、勤奋敬业、活力澎湃、和谐高效的团队。公司秉承以“开放、自由、严谨、自律”为核心的企业文化,感谢他们对我们的高要求,感谢他们从不同领域给我们带来的挑战,让我们激情的团队有机会用头脑与智慧不断的给客户带来惊喜。创新互联公司推出赞皇免费做网站回馈大家。
f(0)的值是1.0,因函数f中循环被架空,s的值不变
f(1)的值是2.0,其中的循环只执行了1次,s的值将是1.0+1.0=2.0
f(2)的值是2.5,其中的循环执行了2次,s的值将是1.0+1.0+0.5=2.5
由此可得出 main函数中a最终的值将是0.0+1.0+2.0+2.5=5.5
附运行结果
C语言库函数,常用库函数有:
1、scanf格式输入函数
2、printf格式输出函数
3、systemdos命令函数
4、sort排序
5、main主函数
6、fgets文件读取字符串函数
7、fputs文件写入字符串函数
8、fscanf文件格式读取函数
9、fprintf文件格式写入函数
10、fopen打开文件函数
11、getchar输入字符函数
12、putchar输出字符函数
13、malloc动态申请内存函数
14、free释放内存函数
15、abs求绝对值数学函数
16、sqrt求平方根数学函数
扩展资料
语言组成:
1、数据类型
C的数据类型包括:整型、字符型、实型或浮点型(单精度和双精度)、枚举类型、数组类型、结构体类型、共用体类型、指针类型和空类型。
2、常量与变量
常量其值不可改变,符号常量名通常用大写。
变量是以某标识符为名字,其值可以改变的量。标识符是以字母或下划线开头的一串由字母、数字或下划线构成的序列,请注意第一个字符必须为字母或下划线,否则为不合法的变量名。变量在编译时为其分配相应存储单元。
3、数组
如果一个变量名后面跟着一个有数字的中括号,这个声明就是数组声明。字符串也是一种数组。它们以ASCII的NULL作为数组的结束。要特别注意的是,方括内的索引值是从0算起的。
4、指针
如果一个变量声明时在前面使用 * 号,表明这是个指针型变量。换句话说,该变量存储一个地址,而 *(此处特指单目运算符 * ,下同。C语言中另有 双目运算符 *) 则是取内容操作符,意思是取这个内存地址里存储的内容。指针是 C 语言区别于其他同时代高级语言的主要特征之一。
参考资料来源:百度百科-函数
如果你基础不够熟练的话,该加把劲复习了。
下面是复习内容纲要:
C语言二级复习纲要
一、基本知识
1.c是高级语言,结构化程序设计语言
2.程序设计的五个部分
二、变量、常量、表达式
1.常量的值是不能改变的
2.标识符的定义方法
3.c语言中二进制和八进制、十六进制的表示方法
4.算术运算符的优先级别(++和--放在变量前后的区别)
5.c程序的基本构成结构(由函数构成,函数由基本结构构成)
三、顺序结构
1.printf的格式控制串中的格式控制字符和后面的数据在数量上要一一对应,类型要匹配
2.scanf的格式控制串中不要有多余字符,后面的数据是地址,如果是变量,前面要有(取地址符)
3.两个%代表一个%
4.复合语句以及空语句
四、选择结构
if (表达式) 语句1;
else 语句2;
switch (表达式)
{ case….:……..;
.
.
.
case…:…….;}
1.关系表达式及优先级别
2.逻辑表达式及优先级别
3.关系,逻辑,算术优先级别的问题
4.if后面跟的表达式是判断真假的,switch是计算值的
5.if表达式后只能跟一个语句,如果要跟多个语句,必须用{ }括起来构成复合语句
6.switch里面的语句后面一定要跟break才能跳出switch,否则会一致执行下去
7.if语句中,语句1和语句2两个语句里面只能有一个语句被执行
五、循环结构
1.三种循环结构及其区别(while和do….while多用于循环次数未知的情况,for用于循环次数已知的情况)
2.循环中的三要素:初始值,结束条件,自增语句
3.break和continue的区别
六、字符
1.字符量是用单引号’引起来的一个字符,用双引号”引起来的字符是字符串
2.字符量等同于整形量
3.要使用putchar和getchar这两个函数,就必须在程序的开头使用#include “stdio.h”
4.连续输入
七、函数
1. 函数可以没有返回值,也可以有返回值,但是只能返回一个值,在函数中,一碰到return语句,函数立即结束,返回调用的地方
2. 函数的返回值也是有类型的,函数的首部要加以说明
3. 函数也必须遵循先定义后使用的原则
4. 函数的实际参数和形式参数必须一一对应,类型也要匹配,同时,参数是变量的,只能进行单向传递,即,参数值只能从主函数传递给函数,而不能从函数返回主函数,这种称之为:传值传递
八、指针
1. 存放地址的变量称为指针
2. “*”号在数据定义的时候作为指针定义符,在语句中作为间接引用
3. 指针一定要有指向,不能没有指向,指向空是有意义的]
4. 通过把指针作为函数参数,可以在主函数和函数之间传递数据,称之为:传地址传递
5. 指针每次移动,都移动一个单元,每个单元的长度是由指针的基类型确定的
6. 指向指针的指针是指:这个变量中存放的是指针的地址
7. 函数也可以返回指针,同样,要在函数首部定义
九、数组
1. 数组是一连串连续的存储单元的集合,他们是连续的
2. 把数组传递给函数,并且希望能改变其值,那么在函数的首部,用指针定义参数
3. 二维数组是一维数组的特殊形式,可以把二维数组看成每一个一维数组,每个元素都是一个一维数组。
4. 要把二维数组传递给函数,并且希望能改变其值,那么,在函数的首部,用一个行指针{(*sp)[ ]}来定义参数
5. 行指针和指针数组是不同的
行指针 指针数组
十、字符串
1. 字符串其实就是字符数组,一维字符数组可以存放一行字,而二维字符数组可以存放若干行字
2. 字符串的结束标志是\0,并且包含在字符串长度之内
3. 可以用字符指针指向一个字符串,其实就是指向字符数组的首地址
4. 字符串的输入输出使用puts和gets函数
十一、结构
1. 结构是一种特殊的用户自定义数据类型,他由若干个成员构成
2. 要引用成员,就要看使用什么来引用。用数据的话:结构体变量名.成员名。是指针的话:结构体指针-〉成员名
3. 成员符优先级别问题:高于++ ――
4. 传递结构体变量给函数,并且希望能改变其值,那么把该结构体变量的地址传递给函数,函数用该类型指针来接受结构体
5. 链表:在定义结构体变量的时候,在其中增加指向自己的指针,使得这种结构体变量能够指向同类型结构体变量,由这种变量首尾相连,就能构成链表。
6. 链表的建立、删除节点、增加节点,查找节点都要使用动态内存分配malloc和calloc,区别在于前者动态分配一个单元,而后者动态分配一系列单元
十一、文件
1. 文件的打开方法和打开方式及如何关闭
2. 如何对文件进行输入和输出
3. 文件指针及其操作函数