C博客作业03--函数

0.展示PTA总分

1.本章学习总结

1.1学习内容总结

1.函数的定义

函数定义的一般形式为:

函数类型 函数名(形式参数表)/*函数首部*/
{
函数实现过程                             /*函数体*/
}

2.函数的调用

函数调用的一般形式为:

函数名(实际参数表)

函数的形参必须是变量,用于接收实参传递过来的值;而实参可以是常量、变量或表达式,
其作用是把常量、变量、或表达式的值传递给形参。
---参数的传递时单向的,只允许实参把值复制给形参,形参的值即使在函数中改变了,也不会反过来影响实参。---

3.函数结果的返回

函数结果返回的形式如下:

return 表达式;

return语句的作用有2个:一是结束函数的运行;
二是带着运算结果(表达式的值)返回主调函数。
---return语句只能返回一个值。---

4.函数原型声明

函数声明的一般格式为:

函数类型 函数名(参数表)

函数声明是一条C语句,而函数定义是的函数首部不是语句,后面不能跟分号

5.局部变量,全局变量和静态局部变量的使用选择

---若一个变量需要传递到多个函数时用全局变量---
---若一个变量只在单个函数中起作用则使用全局变量---
---静态局部变量一般用于累加累乘之类的运算---

使用函数的好处:(摘自课堂派测试)

1.相同功能的代码可以放在同一个函数内,供其他函数调用。解决代码重复问题,更简洁,可读性更好。
2.代码拓展性更好。增加新的功能,不需要更改其他函数。
3.代码维护性更好。查错针对某个功能函数检查。

1.2本章学习体会及代码量累计

1.2.1学习体会

我觉得使用了函数确实使题目变得好做了些,写小学生口算表达式自动生成系统这题,若是不适用函数,那么主函数就会堆积很多switch,if语句,会让人看得眼花缭乱,而使用函数,就可以将每一小步骤拆分开,不仅可以循环使用,而且大大减少了复杂代码的代码量。

1.2.2代码累计

本次综合作业代码量:384行。

综合作业

2.本次作业的函数关系图

3.函数功能及全局变量介绍

3.1全局变量

3.2ListMenu()函数--输出初始界面,并读取用户输入的年级和题数。


3.3grade1()函数--进入一年级题目


3.4grade2()函数--进入二年级题目



3.5grade3()函数--进入三年级题目



3.6WrongMessage()函数--答案错误时输出

3.7RightMessage()函数--答案正确时输出

3.8random(int p, int q)函数--生成一定范围内的随机数

3.9random2(int p, int q)函数--生成随机运算符

3.10random3()--生成随机的整十数

3.11random4()--生成随机的整百数

4.运行结果截图,测试用例。

一年级 5道题

二年级 4道题

三年级 3道题

5. 调试碰到问题及解决办法

1.
一开始我在写的时候没有写i=i-1,而直接continue,但是这样进入下一个循环时i又++了,这样就出错了。
后来发现及时改正了。

2.最初不知道怎么生成随机运算符,后经百度知道可以用随机数加switch,也可以定义字符型数组。

6.大作业总结

还有很多测试点我都没有覆盖到,之后我会努力补上来的。我觉得写这个大作业确实暴露了自己的不足,比如随机数的使用,void型函数的使用。

posted @ 2019-11-03 21:00  王柏鸿  阅读(207)  评论(0编辑  收藏  举报