C博客作业03--函数

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

1.本章学习总结

1.1 函数定义、调用、声明

  • 函数定义
    函数包括库函数和自定义函数两种,库函数编程时直接调用即可,自定义函数需要用户自己定义。
    函数定义的一般形式为:
      函数类型 函数名 (形参表)    /*函数首部*/
      {
         函数实现过程              /*函数体*/
      }

函数首部由函数类型、函数名和形参表组成,位于函数定义的第一行,函数首部后面不能加分号。各个形参之间用逗号隔开,并且每个形参前面的类型必须分别写明。
函数体体现函数的实现过程,由一对大括号内的若干条语句组成,用以计算,或完成特定的工作,并用return语句返回运算的结果。

  • 函数的调用
    定义一个函数后,就可以在程序中调用这个函数。在C语言中,调用标准库函数时,只需要在最前的用#include命令包含相应的头文件,调用自定义函数时,程序中必须有与调用函数相对应的函数定义。
    函数调用的一般形式为:
  函数名 (实际参数表)

实参可以是常量、变量和表达式。实参和形参必须一一对应,两者数量相同,类型尽量一致。
return语句只能返回一个值。

  • 函数声明
    C语言要求函数先定义后调用。函数声明的目的主要是说明函数的类型和参数情况,以保证程序编译时能判断对该函数的调用是否正确。
    函数声明的一般格式为:
     函数类型   函数名 (参数表);

即与函数定义中的第一行(函数首部)相同,并以分号结束。

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

  • 全局变量
    定义在函数外而不属于任何函数的变量称为全局变量。一般情况下把全局变量定义在程序的最前面,即第一个函数的前面。
  • 局部变量
    C语言把定义在函数内部的变量称为局部变量,局部变量的有效作用范围局限于所在函数的内部。局部变量一般定义在函数或复合语句的开始处,标准C规定其不能定义在中间位置。
  • 静态局部变量
    静态变量不会像普通局部变量那样因为函数调用结束而被系统回收,一旦含有静态局部变量的函数被再次调用,则静态局部变量会被重新激活,上一次函数调用后的值仍然保存着,可供本次调用继续使用。静态变量赋初值只在函数第一次调用时起作用,若没有赋初值,系统将自动赋0。

总结:在变量的使用中,应尽量使用局部变量,虽然全局变量比局部变量的自由度大,更方便,但是局部变量它避免了不同函数间的相互打扰,提高了程序的质量。全局变量虽然可以用于多个函数之间的数据交流,但一般情况下,应尽量使用局部变量和函数参数。全局变量可作用于所有函数,静态变量只能用于所定义的函数,而不能用于其他函数。

1.3 C数据类型及注意点

  • 基本数据类型
类别 名称 类型名 数据长度 取值范围
整型 [有符号]整型 int 32位 -2147483648~2147483648(-2^31— 2^31-1)
整型 [有符号]短整型 short[int] 16位 -32768~32767(-2^15— 2^15-1)
整型 [有符号]长整型 long[int] 32位 -2147483648~2147483648(-2^31— 2^31-1)
整型 无符号整型 unsigned[int] 32位 0-4294967295(0—2^32-1)
整型 无符号短整型 unsigned short [int] 16位 0-65535(0-2^32-1)
字符型 无符号长整形 unsigned long [int] 32位 0-4294967295(0—2^32-1)
字符型 字符型 char 8位 0-255
实型(浮点型) 单精度浮点型 float 32位 约±[10(-38)-1038]
实型(浮点型) 双精度浮点型 double 64位 约±[10(-308)-10308 ]
  • 注意点
    1、整型
    整型常量在C语言中有三种进位制,分别是十进制、八进制和十六进制。在使用时,十进制的数字以非0数字开头,八进制的数字以0开头,十六进制的数字以0x开头,并且各中进制之间可以相互转化。
    2、浮点型
    使用浮点类型是默认是double的,如果想要使用float类型的,应在数字后边加f或F。
    浮点常量可以用指数来表示,用E来表示以10为底的幂,例如:1.23E4=1.23*10^4。
    在利用printf("%f",1.23456)进行输出时,默认是保留小数点后6位,如果想要自己设置,可以使用%.xf,其中x表示想要输出的位数,如printf("%.3f",1.2345)将会输出1.235。
    3.字符型数据的输入输出
    1.使用scanf()和printf(),其中%c可以控制读入或者输出一个字符。
    2.使用getchar()和putchar(),getchar()和putchar()都是针对单个字符的输入和输出。
    以上两种方法都是针对单个字符进行操作,如果想要实现对连续的多个字符进行操作,可以采用循环调用的方式

1.4 C运算符

  • 赋值运算符
    赋值语句的作用是把某个常量或变量或表达式的值赋值给另一个变量。符号为‘=’。这里并不是等于的意思,只是赋值,等于用‘==’表示。赋值语句左边的变量在程序的其他地方必须要声明。
  • 算术运算符
    1、C语言的运算符范围很宽,把除了控制语句和输入输出以外的几乎所有的基本操作都作为运算符处理;
    2、C编译系统在处理时是从左到右地,尽可能多地将字符组成运算符,比如i+++j,其实是(i++)+j;
    3、多数系统中对函数参数的求值顺序是从右到左的,例如printf("%d,%d",i,i++);中,输出应为“4,3”。

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

  • 模块流程图

  • 菜单相关函数

  • Grade1(void)一年级函数

  • Grade1(void)二年级函数

  • Grade1(void)三年级函数

posted @ 2020-11-30 23:04  ····。。  阅读(124)  评论(0编辑  收藏  举报