zoukankan      html  css  js  c++  java
  • C语言博客作业03--函数

    0. 展示PTA总分


    1. 本章学习总结

    1.1学习内容总结

    • 学习了自定义函数的声明,引用和定义,懂得函数定义中的函数类型,函数名等以及函数调用时的参数传递等内容。
    • 学习了函数中的变量知识,包括全局变量,局部变量,变量生存周期,静态局部变量等。
    • 函数若有结果返回,用return语句解决;若无结果返回,return可以省略,函数定义为void 函数名(形参表)。
    • C语言中把定义在函数内部的变量称为局部变量,局部变量的有效作用范围局限于所在的函数内部。
    • 定义在函数外而不属于任何函数的变量称为全局变量,它对作用范围内所有的函数都起作用。
    • 变量从定义开始分配存储单元,到运行结束存储单元被回收,整个过程称为变量生存周期。
    • 静态变量若没有赋初值,系统将自动赋0。静态变量只能用于所定义函数。

    1.2 本章学习体会及代码量

    1.2.1 本章学习体会

    • 关键要懂得用函数去实现什么功能,然后对函数进行正确的声明,引用和定义。
    • 在原代码的基础上取出关键部分,用函数进行运算或者表示,这样会使得程序更简洁明了。
    • 自定义函数的函数名还是要多注意一下,不要随便取。

    1.2.2 本次综合作业代码量:

    加上修改的,总共350行左右。


    2.综合作业

    题目:小学生口算表达式自动生成系统

    函数关系图:


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

    3.1 全局变量

    • 如图:


    3.2 menu()函数

    • 功能:提示用户接下来的操作以及此程序的名称。

    3.3 grade1()函数

    • 思路:运用产生随机数的方法,对题目类型进行控制,然后在不同情况下引用不同的函数。

    3.4 grade2()函数

    • 思路:同上。

    3.5 grade3()函数

    • 功能:同上。

    3.6 plus()函数; minus()函数; multiply()函数; calculation()函数


    3.7 words1()函数


    3.8 words2()函数


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

    • 一年级

    • 二年级

    • 三年级


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

    • 问题:开始输入年级数和题目数后,没法引用相关函数,直接退出主函数了。
      解决方法:grade()函数为void类型的函数,即没有返回值。所以在主函数中引用grade()函数时去掉了前面的void。
    • 问题:开始引用multiply()函数时输入答案后程序出错,没法显示结果。
      解决方法:发现输入答案语句中忘了加字符&,从而程序无法识别其地址。

    6.大作业总结

    • 这次函数作业开头没认真看要求,使得自己开始的程序不符合要求,又耗了大把时间,下次写博客还是要先看题目要求。
    • 程序显得很繁琐,运用了循环结构和选择结构。
    • 先要理清框架,懂得自己要用哪几个函数来解决问题,这样对于程序的书写会更容易一些。
  • 相关阅读:
    网络流相关题目
    【洛谷P3119】[USACO15JAN]草鉴定Grass Cownoisseur
    【洛谷八连测R6】yanQval-透明的星尘
    【洛谷八连测R6】yanQval-分离丧失的既视感
    【洛谷八连测R6】yanQval-不可逆的重启动
    【洛谷P2700】逐个击破
    【洛谷八连测R5】whzzt-Confidence
    【洛谷八连测R5】whzzt-Warmth
    【洛谷八连测R5】whzzt-Conscience
    【NOIP模拟赛】
  • 原文地址:https://www.cnblogs.com/1234hj/p/11788311.html
Copyright © 2011-2022 走看看