c语言程序设计第四章笔记,c语言前四章编程例题及答案

  c语言程序设计第四章笔记,c语言前四章编程例题及答案

  目录

  1.什么是函数?

  二、C语言中函数的分类

  1.库函数

  2.自定义功能

  第三,函数调用

  四。链式存取

  第五,函数递归

  【前言】:函数是学习C语言的重点内容之一,一定不能掉以轻心。不难,但是要多花时间去理解。我可以,我相信你也可以。让我们一起加油吧!

  1.函数数学中常见的函数概念是什么?但是你了解C语言中的函数吗?

  维基百科对函数的定义:子程序

  在计算机科学中,子程序是大程序中代码的一部分,由一个或多个语句块组成。它负责完成一项特定的任务,与其他代码相比相对独立。一般来说,有输入参数,有返回值,提供了流程的封装和细节的隐藏。二、C语言库函数中函数的分类函数自定义函数1。库函数为什么有库函数?

  1.我们知道,在学习C语言编程的时候,我们总是迫不及待地想知道一段代码写完之后的结果,想把结果打印到我们的屏幕上看一看。这个时候我们会频繁使用一个功能:在屏幕上以某种格式打印信息(printf)。

  2.在编程的过程中,我们会经常做一些字符串复制(strcpy)。

  3.在编程中,我们也计算,而且总是计算n的k次方(pow)。

  像我们上面描述的基本功能一样,它们不是业务代码。在开发过程中,每个程序员都可以使用它。为了支持可移植性,提高程序效率,C语言基本库提供了一系列类似的库函数,方便程序员开发软件。

  那么如何学习库函数呢?

  作者使用了MSDN,这是一个涵盖了几乎所有C语言库函数的文档。

  输入想要查找的库函数名称,就会显示出对应的函数原型,以及如何使用等。非常方便。

  简单总结一下,C语言中常用的库函数有:

  IO字符串操作函数字符操作函数内存操作函数时间/日期函数数学函数其他库函数注意:使用库函数时必须知道的一个秘密是,使用库函数时,必须包含#include对应的头文件!

  哦,注意,英语其实很重要。最起码,你应该会看文献吧!但是不要怕铁汁,多看多搜,慢慢的你就熟悉套路了。加油!

  2.自定义函数如果库函数什么都能做,程序员还做什么?

  更重要的是自定义函数。

  像库函数一样,自定义函数也有函数名、返回值类型和函数参数。但不同的是,这些都是我们自己设计的。这给了程序员很大的发挥空间。

  第三,函数调用

  用一个容易出错的问题引入知识点:交换两个变量的值

  #包含stdio.h

  //定义一个交换两个整型变量的值的函数

  void swap1(整数1,整数2)

  {

  int temp=num1

  num1=num2

  num2=temp

  }

  int main()

  {

  int num1=10

  int num2=20

  Printf(交换前:\ n );

  printf(%d %d\n ,num1,num 2);

  putchar( \ n );

  swap1(num1,num 2);//函数调用

  Printf(交换后:\ n );

  printf(%d %d\n ,num1,num 2);

  返回0;

  }可能大家都会写上面的代码,但实际上它运行的时候并没有得到我们想要的答案。不要相信我。

  程序虽然运行了,但是没有得到我们想要的答案。为什么?

  这说明程序没有语法错误,但是有逻辑问题。

  这就要提到一个考点了:

  函数通过值调用时,实参传递给形参,形参实际上是实参的临时副本,所以形参的修改不会影响实参。

  所以重写如下:

  #包含stdio.h

  //函数定义

  void swap2(int* num1,int* num2)

  {

  int temp=* num1

  * num1=* num2

  * num2=temp

  }

  int main()

  {

  int num1=10

  int num2=20

  Printf(交换前:\ n );

  printf(%d %d\n ,num1,num 2);

  putchar( \ n );

  swap1( num1,num 2);//函数调用

  Printf(交换后:\ n );

  printf(%d %d\n ,num1,num 2);

  返回0;

  }

  这就实现了交换。为什么swap1不行,swap2可以?

  Swap1是一个值传递调用。参数num1、num2和参数x、y不使用相同的内存空间。尽管参数与实参具有相同的内容,但它们占用不同的内存块。此时,参数相当于实参的临时副本,对参数的修改不会影响实参。

  Swap2是地址调用,实际实参的地址放在形参中。这种传递参数的方式可以在参数和实参之间建立真正的联系。这时候修改参数就可以改变函数外的实参。

  至于函数调用,需要注意的是函数可以嵌套,但是定义不能嵌套。

  四。链式存取

  链式访问是:把一个函数的返回值作为另一个函数的参数。

  比如:

  char arr[20]= hello ;

  printf(%d\n ,strlen(arr));//这是链式访问呵呵,这里有个好玩的笔测:

  printf(%d ,printf(%d ,printf(%d ,43));屏幕上印的是什么?

  屏幕上印的是:4321

  为什么?这个有点混乱,我来帮铁汁解决混乱。

  printf()函数的返回值是打印在屏幕上的字符数。

  这个知识点就讲到这里。我们自己试着去理解吧。

  动词(verb的缩写)函数递归函数递归真的很重要!不过我在之前的博文里已经说的很清楚了。铁汁一定要看看!

  第二章,蓝杯算法竞赛系列,3354章,深入理解重难点递归(上)

  好了,今天的功能到此为止。这部分内容不多,但是本文提到的知识点都很重要。小朋友一定要花点时间。给你一朵小红花。

  安然无恙。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

相关文章阅读

  • c语言调用退出函数 c语言退出整个程序怎么写
  • c语言中怎么给函数初始化 c语言的初始化语句
  • c语言编写函数计算平均值 c语言求平均函数
  • 详解c语言中的字符串数组是什么,详解c语言中的字符串数组结构,详解C语言中的字符串数组
  • 表达式求值c++实现,c语言实现表达式求值
  • 看懂c语言基本语法,C语言详解,C语言的基本语法详解
  • 用c语言实现快速排序算法,排序算法设计与实现快速排序C语言,C语言实现快速排序算法实例
  • 深入解析c语言中函数指针的定义与使用方法,深入解析c语言中函数指针的定义与使用情况,深入解析C语言中函数指针的定义与使用
  • 描述E-R图,E-R图举例,关于C语言中E-R图的详解
  • 折半查找法C语言,折半查找算法(算法设计题)
  • 折半查找法C语言,c语言折半法查找数据,C语言实现折半查找法(二分法)
  • 扫雷小游戏c++代码设计,c语言扫雷游戏源代码,C语言实现扫雷小游戏详细代码
  • 怎样统计程序代码行数,C语言统计行数,C#程序员统计自己的代码行数
  • 基于c语言的贪吃蛇游戏程序设计,用c语言编写贪吃蛇游戏程序,C语言实现简单的贪吃蛇游戏
  • 图的两种遍历算法,图的遍历算法代码c语言,Python算法之图的遍历
  • 留言与评论(共有 条评论)
       
    验证码: