第六章:循环结构程序设计

1、while语句(循环次数未知) 格式:while(循环控制表达式) { 语句序列 } 多组输入while(cin>>a) 2、do-while(循环次数未知,循环至少执行一次) 格式:do {语句序列 }while(循环控制表达式) 3、for语句(循环次数已知) 格式:for(初始表达式;循环控制表达式;增值表达式){语句序列} ୧⍢⃝୨ 空语句(用于编写延时程序) 循环次数已知,但循环语句是空的,执行有限次空循环以延时。 ୧⍢⃝୨ 死循环 while语句后被加上分号,则循环变量无法变化,故形成死循环。 ୧⍢⃝୨ 嵌套循环 ⑴原则:现有外层循环进入内层循环,并在内层循环终止后接着执行外层循环。 ⑵循环体的次数=外层循环次数×内层循环次数。且不可超过10e9次。 ୧⍢⃝୨ 条件控制的循环 循环次数未知的循环通常是由一个条件控制的,此时经常使用此种循环。 ①break语句(在条件循环结构中跳出内部循环) ②goto语句(跳出多重循环) ୧⍢⃝୨ 穷举法编程 扩大循环次数,利用条件循环语句,穷举直到找到符合条件的为止,再利用break语句跳出循环。

第七章:函数与模块化程序设计

  1. 函数说明

在定义函数时,ANSI C要求每个参数都要声明类型。例如,

void example(int x, y, z) //声明错误,错误的函数头

void example(int x, int y, int z) //声明正确,正确的函数头

void表示函数没有返回值。如果函数头中的括号中是void表示函数没有输入参数。

在使用函数之前,要用ANSI C形式声明函数原型。

  1. 递归函数

递归函数必须包含能用递归调用停止的语句。通常,递归函数都使用if或其他等价的测试调价在函数

形参等于某特定值时终止递归。为此,每次递归调用的形参都要使用不同的值。

递归函数的优缺点:

优点:递归为某些编程问题提供了最简单的解决方案;

缺点:递归算法会快速消耗计算机的内存资源。递归不方便阅读和维护。

  1. 使用多个文件定义函数

如果把main函数放在第一个文件中,把函数放在第二个文件中。那么在调用函数时仍需要使用函数原型,把函数

放在头文件中,就不需要在主函数之前写上函数原型。例如:

1.第一个文件:主函数;

  1. 第二个文件:定义函数;

3.第三个文件:(头文件—— .h文件)说明函数原型。

其中,主函数的文件和定义函数的文件要使用#include "头文件"。这相当于当主函数和函数都在一个文件中

时,需要声明函数原型,定义函数。

注意:

当修改被调用函数中参数的值的时候并不会改变主函数中的实参的值。例如:

主函数中调用函数change来交换两个数。主函数中调用函数语句为change(a,b)

change函数的定义为change(int c , int d)

如果change函数交换了a,b的值(通过形参c,d将主函数中的数值a,b传进来)并不会影响主函数中的a,b的值。

因为在c语言中a,b,c和d是四个数,与fortran中的函数或子程序不同。在Fortran中在函数或子程序中交换a和b的值

那么返回主程序之后a和b的值也会相应的改变,虽然他们的名字不同但是地址相同(a和c的地址相同,b和d的地址相同)。

在c语言中要解决上面的问题需要使用指针(pointer)。

例:输出金字塔

例:四则运算

c语言笔记(第一周)相关推荐

  1. 机器学习笔记 (第一周)

    机器学习笔记 (第一周) 目录 机器学习笔记 (第一周) 引言(Introduction) 1.1 什么是机器学习,机器学习能做些什么事情 1.2 机器学习是什么? 1.3 监督学习 1.4 无监督学 ...

  2. 吴恩达机器学习笔记第一周

    第一周 吴恩达机器学习笔记第一周 一. 引言(Introduction) 1.1 欢迎 1.2 机器学习是什么? 1.3 监督学习 1.4 无监督学习 二.单变量线性回归(Linear Regress ...

  3. Python语言程序设计 第一周习题

    Python语言程序设计 第一周习题 习题1 获得用户输入的一个整数,参考该整数值,打印输出"Hello World",要求:‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮ ...

  4. 《Text Mining and Analytics》学习笔记——第一周

    课程链接:https://www.coursera.org/learn/text-mining 主讲:伊利诺伊大学香槟分校 ChengXiang Zhai教授 NLP领域有哪些神一样的人物:知乎链接 ...

  5. #C语言学习——第一周 求长方形周长面积

    #学C语言第一周 第二天 因为要加学校一个打比赛的牛逼社开始学C 记录几个今天的错 1.stdio 拼写 2.;英文 :中文 3.每句记得; 4.记得数据类型 还有今天的作业 问题要求:输入一个长方形 ...

  6. 从零开始写安卓APP 《第一行代码》笔记 第一周

    这是软件开发课的任务,本人其实不会java也不会安卓开发.以前只做过web端,因为某课程的爆炸实验单人撸了全栈.不过好在很早前就想学了,这里记录一下过程.放的主要是<第一行代码>的一些笔记 ...

  7. 初识C语言:小白学习C语言的第一周记录

    目录 1.个人情况说明于学习期待 2.学习资源的分享 3.学习C语言的准备工作和本周学习的知识 个人情况说明和学习期待 我是一名大学生新人,因为高中时期有幸接触到了机器人比赛,从此深深地热爱上了计算机 ...

  8. C语言复习第一周归纳总结(简介~switch开关语句)

    一.C语言简介         1.   BCPL-> New B-> C-> UNIX-> Minx -> Linux->gcc C语言诞生:1971~73年,美 ...

  9. WDK学习笔记第一周

    文章目录 摘要 一.对PM2.5预测的论文的总结 1.1 背景 1.2 PM2.5 1.3 综述 1.4 对桂林空气质量文章的总结 1.4.1 空气质量变化 1.4.2 污染物扩散的影响因素 二.LS ...

  10. 2022李宏毅机器学习深度学习学习笔记--第一周

    文章目录 摘要 机器学习的基本概念 机器学习 不同的函式类别 gradient descent 深度学习(Deep learning) Case study 摘要 本文主要介绍什么是机器学习,机器学习 ...

最新文章

  1. 二叉树非递归遍历的经典求解
  2. svn的一些相关资料
  3. 【计算理论】可判定性 ( 对角线方法 | 证明自然数集 N 与实数集 R 不存在一一对应关系 )
  4. 设计模式之 抽象工厂 封装业务逻辑层和Dao层
  5. BLE-NRF51822教程8-动态广播
  6. CCNA必会知识点:路由器PAP单向认证怎么配置?
  7. 基于openfire+smack的Android、消息推送服务
  8. 单片机定时器实验两位倒计时秒表_第5章 定时器与数码管基础
  9. 使MySQL 支持繁体字
  10. Atitit 会话层和表示层的异同
  11. 持续更新免费的 API,做一个 API 的搬运工
  12. PyQt5 +requests 写一个能播放全网音乐的播放器
  13. java中finish什么意思,finish是什么意思(你知道Finish 和 Complete 的区别吗?)
  14. 计算机开机错误62,电脑开机出现Error 1962错误如何解决?
  15. 清凉-明智左马介秀满的一生
  16. CSS实现立体字的效果
  17. 中国著名大学校训巡礼
  18. php preg_match 漏洞,PHP preg_match()函数信息泄露漏洞
  19. jquery append()方法与html()方法用法区别
  20. 审批流程设计方案-介绍(一)

热门文章

  1. 教师学计算机信息,计算机教师
  2. 计算机毕业设计论文不会做怎么办?这里送教程送代码送开题送答辩
  3. 第四次工业革命,人工智能革命真的来了
  4. 书友汇德天-创作不停,学习不止(十字交叉线画法)
  5. php 浏览器打开excel文件夹里,php网页显示excel表格数据-phpexcel 读取excel里的数据并在页面显示出来...
  6. html中怎么做扇形菜单,纯CSS3实现扇形动画菜单(简化版)实例源码
  7. Mac下Chrome的插件安装目录在哪?
  8. 摄氏度与华氏度相互转换
  9. 用Python制作生日蛋糕、生日快乐,生日祝福代码
  10. 工序作业指导书怎么做?如何制作工序作业指导书?