当前课程知识点:C语言程序设计(下) > 第一周:函数(一) > 1.1 函数定义 > 例题演示
下面我们就来编程实现
将一个偶数分解为两个素数之和
首先我们建立一个源文件
输连入预处理文件包含
我们给这个函数名叫做
判断一个数是否为素数
那么此时的n就是形参
形参的类型为基本的整型
在这个函数中我们要用到一个变量i
让变量i循环
大家知道
如何判断一个数是素数呢
也就是说
从2开始
到这个数的一半的范围之内
如果能有一个数把它整除
就说明这个n不是素数
那于是在循环中我们判断
假如某一时刻
也就是说
i从2到n/2的过程中
只要有一个i的值
能够把n整除
那就说明这个n
不是素数
判断了不是素数
就返回一个0
否则
如果始终找不到这么一个值
那就说明这个n是素数
函数写完了
接下来
主调函数要使用它的功能
那么在主函数内部
在主函数内部
我们定义变量i
定义一个变量叫num
那这个num的值到底是什么呢
我们从键盘
以十进制整数的形式
输入一个偶数
我们要解决的问题是
从键盘输入一个偶数判断
将其分解成两个素数之和
输入了这个偶数之后
让循环变量i
从2开始
在小于等于num/2的范围之内循环
在循环体内
我们来判断一下
以当前的变量i
来调用求素数的函数
如果此时返回值为1
说明它是素数
但是同时
我们再以num-i为参数调用
如果返回值也是1
那就说明
此时的num的值
我们输入的这个偶数值
它能够分解成两个素数之和
那么这时候我们就输出这一结果
为了能让大家看得清
我们现在用一个值等于
两个值之和的形式来看
当前的num值可以分解为
i再加上num-i这样的两个数
这个程序就编完了
我们下面编译一下
保存
编译
现在来运行
大家看
我们现在运行这个程序
从键盘输入24
大家可以看到
24这样一个十进制的整数偶数
可以分解成5+19
7+17
11+13
刚才我们还说了另一个问题
就是求100以内的素数
那么现在我们再来编另一段程序
刚才说了求素数这个函数
从代码重复使用的角度
我们现在来看如何编另一个程序
我们把这段代码复制
新建一个源程序
把它粘贴
那么求素数这段程序是可以重复使用的
接下来我们要求100以内的素数
那现在主调函数中
我们定义一个变量i
现在我们就让变量i循环
从2开始
i小于等于100
在这个循环体当中
那只要我们用
变量i作为参数
来调用这个求素数的函数
其返回值为1
就说明此时的i是素数
那么就是我们要的这个结果
为了区分
彼此分开距离我们用%5d这种格式
这个程序就写完了
我们再来把它保存
起一个名
下面编译
编译正确
来运行这个结果
现在大家就可以看到
就可以看到
100以内的所有的素数
共享视界楚门字幕组 联系方式244081468
-1.1 函数定义
--内容简介
--函数是什么
--例题演示
--知识点总结
-1.1 函数定义--作业
-1.2 模块化程序设计
-1.3 函数调用、声明和返回
--函数调用的过程
--函数嵌套调用
-1.4 函数间参数传递
--形参与实参值传递
--小结
--html
-1.4 函数间参数传递--作业
-函数递归调用
--html
--html
--html
--html
--html
--html
-函数递归调用--作业
-3.1 变量存储属性
--开场
--局部变量全局变量
--存储类别小结
--html
--html
--html
--html
--html
-3.1 变量存储属性--作业
-3.2 编译预处理
--编译预处理开头
--编译预处理内容
--库函数
--函数总结
--综合例子
--html
-3.2 编译预处理--作业
-4.1 指针的定义、初始化和引用
--本周内容简介
-4.1 指针的定义、初始化和引用--作业
-4.2 指针与数组
--指针与数组
--Video
-4.2 指针与数组--作业
-5.1 指针与字符串
--本周开篇介绍
--指针与字符串
--指针与字符串小结
-5.1 指针与字符串--作业
-5.2 多维数组指针
--指针与多维数组
--html
--html
--html
--html
--html
--html
--html
--html
-5.2 多维数组指针--作业
-6.1指针与函数
--本周开篇介绍
--指针指向函数
--返回指针值的函数
--html
--html
--html
-6.1指针与函数--作业
-6.2指针与指针
--引入指针数组
--指针数组
--二级指针
--指针内容小结
--html
--html
--html
--html
-6.2指针与指针--作业
-7.1 结构的概念
--Video
--Video
--Video
--Video
--html
--html
-7.1 结构的概念--作业
-7.2 结构数组
--Video
--Video
--html
-7.2 结构数组--作业
-7.3 结构指针
--Video
--Video
--Video
--html
-7.3 结构指针--作业
-7.4 结构与函数
--Video
--html
-7.4 结构与函数--作业
-7.5 联合
--Video
--Video
--html
-7.5 联合--作业
-8.1 typedef自定义类型
--自定义类型
-8.1 typedef自定义类型--作业
-8.2 枚举类型
--枚举类型
-8.2 枚举类型--作业
-8.3 链表的概念
--为什么使用链表
--链表的定义和功能
-8.3 链表的概念--作业
-8.4 链表的基本操作
--创建链表的步骤
--创建链表的过程
--访问链表中的节点
--约瑟夫问题
--html
--html
-8.4 链表的基本操作--作业
-9.1 文件概述
--文件概念
--文件分类
-9.1 文件概述--作业
-9.2 文件型指针
--文件结构与指针
--设备文件
--html
-9.2 文件型指针--作业
-9.3 文件的打开与关闭
--文件读写方式
--文件读写操作
-9.3 文件的打开与关闭--作业
-9.4 文件的顺序读写
--字符串输入输出
--html
-9.4 文件的顺序读写--作业
-9.5 文件的随机读写
--文件随机读写
-9.5 文件的随机读写--作业
-9.6 文件检测
--文件检测
-9.6 文件检测--作业
-9.7 文件应用实例
--文件应用实例
--html
--html
-10.1 C语言知识总结
--程序调试概念
--软件测试方法
--程序跟踪调试
--C语言语法要点
--标识符及运算符
--程序设计流程
--数组、函数及指针
--结构和文件
-10.1 C语言知识总结--作业
-10.2 C语言练习
--程序设计方法
--图像合成例子
--html
-期末考试复习题
--html
-期末考试复习题答案
--html