• C语言博客作业03--函数


    这个作业属于哪个班级 C语言--网络2011/2012
    这个作业的地址 C语言博客作业03--函数
    这个作业的目标 学习如何设计函数、C语言基本数据类型
    姓名 梁桢

    0.展示PTA总分(0----2)

    1.本章学习总结(4分)

    1.1 函数定义、调用、声明

    • 定义:函数是一块代码,接受零个或多个参数,做一件事情,并返回零个或一个值。(无返回值为void)
    • 作用:能让代码能更简洁易懂、避免代码复制来提高代码质量,同时易于后期修改、更易读懂。
    • 函数在调用前应先声明
    • 函数需要声明参数的类型 int max(int x ,int y),double fact (),float number()
    • 声明函数时可以省略形参。如int max(int x ,int y);可写为int max(int ,int );
    • 特别地:当无参数时:括号可为(void)或者();当无返回值时 : 用void声明 如void number(int x);

    例子:求e的近似值

    • 函数一般在文件头声明,函数的内容写在主函数之后。
    #include<stdio.h>
    double fact(int n);//函数声明
    
    int main()
    {
        int n;
        int i;
        double e = 1.0;
        scanf("%d",&n);
        for (i = 1;i <= n;i++){
            
            e += 1.0/fact(i);//函数的调用
            
        }printf("%.8f",e);
        return 0;
    }
    double fact(int n)
    {
        double fact = 1;
        int i;
        for(i = 1;i <= n;i++){
            fact *= i;
        }
        return fact;
    }
    
    • 函数内容也可以直接跟在函数声明的下面。
    #include<stdio.h>
    double fact(int n)         //函数声明以及内容
    {
        double fact = 1;
        int i;
        for(i = 1;i <= n;i++){
            fact *= i;
        }
        return fact;
    }
    int main(){
        int n;
        int i;
        double e = 1.0;
        scanf("%d",&n);
        for (i = 1;i <= n;i++){
            
            e += 1.0/fact(i);          //函数的调用
            
        }printf("%.8f",e);
        return 0;
    }
    
    

    1.2 全局、局部变量、静态局部变量

    1. 全局变量:定义在函数外面的变量,所以叫全局变量。

    2. 局部变量:定义在函数内部的变量称为局部变量,它的作用域仅限于定义的那个函数内部。

    3. 静态局部变量:静态局部变量定义时前面加static关键字,其不同之处在于静态局部变量在第一次函数被调用时创造并初始化,但在函数退出时它不死亡,而是保持其值等待函数下一次被调用。下次调用时不再重新创造和初始化该变量,而是直接用上一次留下的值为基础来进行操作。

    1.3 C数据类型及注意点

    数据类型 占用字节 数据类型 举例
    char 1 字符型 char service = 'a'
    int 2 整型 int narcissistic = 153
    float 4 单精度浮点型 float lz = 20.315
    double 8 双精度浮点型 double ldr = 831143.011031

    浮点误差

    • 浮点型数据在存储时会会让小数靠后部分有误差,如图:

    1.4运算符

    名称 运算符号 举例
    加减乘除 +-*/ 8+2-10*4/5=2
    (求余)模 % 50%7=1
    && (1>0&&3>2) = 1
    || (1>2
    大于(大等于) > (>=) 5>4
    小于(小等于) <(<=) 8<9

    学习体会

    • printf("学习C语言非常开心,每天都乐在其中,为写出代码而开心极了呀!!!");
      /进度太快,完全跟不上,作业做不完,博客写不完也不会写,今天写完一个测试明天又是一个测试,要思维没思维,要数学基础没数学基础,感觉自己就是一个废物。请您别在意废物的这句话/

    2.综合作业(6分):小学生口算表达式自动生成系统

    2.1.模块流程图

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

    2.2.1.全局变量

    • 介绍见注释

    2.2.2 菜单相关函数

    • 介绍见注释

    2.2.2 出题相关函数

    • 函数为三个年级和随机字符的生成。

    一年级

    二年级

    三年级

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

    一年级


    二年级


    三年级


    • 二三年级可以选择做加减还是乘除
    • 不会用动图就截了几张

    2.4.大作业中编程技巧总结

    1. 主函数为一个主干,可将函别的函数的定义放在外面,利于阅读。
    2. 对代码多进行注释,变量名起得易懂,方便之后的阅读者(包括自己)。
    3. 函数可以适当定义一些全局变量可以让每个函数直接使用。
    4. 象这种人机互动的题目有适当的人机交互的语句,做对了表扬错了鼓励使代码更生动。

    代码提交

  • 相关阅读:
    Backtrader中文笔记之Renko Bricks
    Renko Charts介绍
    Backtrader中文笔记之Cerebro(大脑)。
    Backtrader中文笔记之Operating the platform(操作平台)。
    Backtrader中文笔记之Platform Concepts(平台介绍)。
    Backtrader中文笔记_Quickstart。
    PyAlgoTrade 0.20中文笔记
    浅谈JS中 reduce() 的用法(转帖)
    Python websocket的示例(转帖)
    硬盘显示有容量,但无法放入文件,还有一个查看机器端口是否开放。
  • 原文地址:https://www.cnblogs.com/lz02/p/14063860.html
Copyright © 2020-2023  润新知