2024-2025-1 20241301 《计算机基础与程序设计》第六周学习总结

news/2024/12/28 9:27:09/文章来源:https://www.cnblogs.com/HonJo/p/18523562

|这个作业属于哪个课程|<2024-2025-1-计算机基础与程序设计(https://edu.cnblogs.com/campus/besti/2024-2025-1-CFAP)>|
|这个作业要求在哪里|<2024-2025-1计算机基础与程序设计第六周作业](https://www.cnblogs.com/rocedu/p/9577842.html#WEEK06)>|
|这个作业的目标|<夯实基础,巩固知识>|
|作业正文|https://www.cnblogs.com/HonJo/p/18523562|

一、教材学习内容总结
(一)函数的调用
以下是在C语言中调用函数的基本步骤:

  1. 函数声明(Prototype)
    在调用函数之前,你需要声明函数的原型。这告诉编译器函数的返回类型、名称和参数列表。函数原型通常放在程序的开头或者头文件中。

    int add(int, int); // 函数声明
    
  2. 函数定义
    函数定义是函数的实际代码,包括函数体和花括号内的代码。

    int add(int a, int b) {return a + b;
    }
    
  3. 函数调用
    在程序中,你可以通过函数名和括号中的参数来调用函数。

    int result = add(5, 3); // 调用函数
    printf("%d\n", result); // 输出结果
    
  4. 参数传递
    当函数被调用时,实际参数(调用函数时提供的值)会被传递给函数的形参(函数定义中的参数)。

  5. 返回值
    如果函数有返回值,它会在函数执行完毕后返回给调用者。

下面是完整的示例代码:

#include <stdio.h>// 函数声明
int add(int, int);int main() {int result = add(5, 3); // 调用函数printf("%d\n", result); // 输出结果return 0;
}// 函数定义
int add(int a, int b) {return a + b;
}

在这个例子中,add 函数接受两个整数参数,并返回它们的和。在 main 函数中,我们调用 add 函数并打印结果。

记住,函数调用时,参数的顺序必须与函数定义时的参数顺序一致。此外,如果函数没有声明,编译器可能会因为不知道函数的返回类型和参数类型而报错。

问题:
1.
在C语言中调用函数具有许多好处,这些好处不仅有助于提高代码的效率和可读性,还有助于代码的维护和扩展。以下是调用函数的一些主要好处:

  1. 代码重用
    函数允许你编写一次代码,然后在程序的多个地方调用它,而不需要重复编写相同的代码。这减少了代码的冗余,并使得代码更容易维护。

  2. 模块化
    函数将程序分解成更小、更易于管理的部分。每个函数执行一个特定的任务,这使得程序结构更清晰,更容易理解和修改。

  3. 减少错误
    通过将代码分解成函数,你可以更集中地测试和调试每个部分,这有助于减少错误并提高代码的可靠性。

  4. 提高代码可读性
    函数名称通常可以描述函数的功能,这使得代码更易于阅读和理解,尤其是对于其他开发者来说。

  5. 参数化
    函数可以接受参数,这使得它们更加灵活。你可以用不同的输入重复使用同一个函数,而不需要为每种情况编写不同的代码。

  6. 封装
    函数封装了一段代码,隐藏了实现细节,只暴露了接口(即函数的声明)。这有助于保护代码的内部逻辑,防止外部代码直接访问和修改内部状态。

  7. 易于测试
    你可以独立地测试每个函数,确保它们按预期工作,然后再将它们集成到更大的程序中。

  8. 提高性能
    对于性能关键的代码,你可以优化函数的实现,以确保它们运行得尽可能快。由于函数可以被多次调用,这种优化可以在整个程序中带来性能提升。

  9. 代码维护
    当需要修改程序的某个功能时,你只需要修改相应的函数,而不需要修改整个程序。这使得维护和更新代码变得更加容易。

  10. 代码复用
    在大型项目或团队中,函数可以被不同的开发者在不同的模块中使用,这有助于保持代码的一致性和减少重复工作。

  11. 支持递归
    函数可以调用自己,这使得实现递归算法成为可能,递归在处理某些问题(如树的遍历、分治算法等)时非常有用。

  12. 错误处理
    函数可以返回错误代码或异常,使得错误处理更加集中和一致。

三、基于AI的学习








本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/826216.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【UWP】让 UWP 自己托管自己 —— Windows App SDK 篇

众所周知,UWP 使用的窗口模型是 CoreWindow,但是 UWP 本身只是一个应用模型,所以完全可以创建 win32 窗口,那么我们可以不可以创建一个 win32 窗口,然后像 XAML 岛 (XAML Islands) 一样把 XAML 托管上去呢?本篇将讲述如何利用 WAS (Windows App SDK,俗称 WinUI3) 在 UWP…

【算法】记忆化搜索

[!TIP] 一种剪枝算法,优化运算效率,减少冗余计算基本内容入门例子 [P1028 [NOIP2001 普及组] 数的计算]([P1028 NOIP2001 普及组] 数的计算 - 洛谷 | 计算机科学教育新生态)题目要求:输入n,输出一共可以构造多少个数列,要求数列的第 i不能超过第i-1个数的一半 示例:输入6…

『模拟赛』NOIP2024模拟1

『模拟赛记录』NOIP2024模拟1Rank 有点可惜,A. 玩游戏 绝妙贪心题。感觉这种能产生很多假做法且都可 hack 的贪心都是好题。 赛时不知道为什么犯唐没交一开始的暴力贪心。 考虑双指针,设左右指针分别为 \(l,r\)。主要思路是实时维护当前两个指针向两边最近的一个区间和不为正…

2024-2025-1 20241312《计算机基础与程序设计》第6周学习总结

这个作业属于哪个课程 <班级的链接>(如2024-2025-1-计算机基础与程序设计)这个作业要求在哪里 <作业要求的链接>(如2024-2025-1计算机基础与程序设计第六周作业)这个作业的目标 Polya如何解决问题 简单类型与组合类型 复合数据结构 查找与排序算法 算法复杂度 递…

工程师和科学家的高等数学及python实例:2三角函数 II

2 三角函数 II 学完本章内容后,你应该能够 ● 讨论反三角函数的图形 ● 讨论倒数函数的图形 ● 评估正弦、余弦和正切函数的变换 2.1 引言 本章将继续讨论三角函数,研究上一章中涉及的三个三角函数的倒数和反三角函数。本章还将讨论这些函数的变换。 2.2 三角函数的倒数 正弦…

搭建主从DNS服务器实现域名正逆向解析

1.前置工作:关闭防火墙及selinux 2.安装软件:yum install -y bind 3.本文仅搭建本地DNS实现逆向域名解析 1)建议复制逆向解析模板再进行修改 模板路径:/etc/named.rfc1912.zones 2)进入主配置文件并添加逆向配置文件 vim /etc/named.conf 注意:区域名称中IP地址反向书写,…

2024-2025-1 20241407《计算机基础与程序设计》第六周学习总结

这个作业属于哪个课程 [2024-2025-1计算机基础与程序设计](https://edu.cnblogs.com/campus/besti/2024-2025-1-CFAP)这个作业要求在哪里 2024-2025-1计算机基础与程序设计第六周作业这个作业的目标 学习Polya如何解决问题,简单类型与组合类型,复合数据结构,查找与排序算法…

Me-and-My-Girlfriend-1靶机渗透 (Vulnhub内网渗透)

一、Me-and-My-Girlfriend-1: 1、渗透目标: Description: This VM tells us that there are a couple of lovers namely Alice and Bob, where the couple was originally very romantic, but since Alice worked at a private company, "Ceban Corp", something …

pc大屏适配

在文件utils里配置 const baseSize = 12 //设置rem函数 function setRem() {//页面宽度相对于设计图宽的缩放比例,根据需要修改 1920(设计稿宽度)const scale = document.documentElement.clientWidth / 1920;// 设置页面根节点字体大小(match.min(scale,2)"指最高放大比…

高级语言程序设计第五次个人作业

2024高级语言程序设计:https://edu.cnblogs.com/campus/fzu/2024C 高级语言程序设计课程第五次个人作业:https://edu.cnblogs.com/campus/fzu/2024C/homework/13298 学号:102400111 姓名:蔡伟仡 8.11.18.11.28.11.38.11.48.11.58.11.68.11.78.11.89.11.19.11.29.11.39.11.49.11…

数据采集与融合技术实践作业三

数据采集与融合技术实践作业三 gitee链接:https://gitee.com/wei-yuxuan6/myproject/tree/master/作业3 作业① Scrapy爬取图片实验要求:指定一个网站,爬取这个网站中的所有的所有图片,例如:中国气象网(http://www.weather.com.cn)。使用scrapy框架分别实现单线程和多线…

固态移动硬盘不识别数据恢复

当固态移动硬盘不被识别时,数据恢复成为一个关键问题。以下是一些有效的数据恢复方法: 一、检查连接与驱动程序 检查连接:首先确认固态移动硬盘的连接是否正确,包括SATA接口、电源连接(如果适用)以及USB线或其他转接线是否损坏或松动。对于外置硬盘,确保连接线和转接器没…