c加加上机实践实验7函数(2)实验报告

  • 格式:doc
  • 大小:44.00 KB
  • 文档页数:4

中国矿业大学计算机学院实验报告

课程名称 c++程序设计上机实践_ _ 实验名称___ 实验7函数(2)

班级__ 姓名_______学号___ 仪器组号_______ 实验日期______

实验报告要求:1.实验目的 2.实验内容 3.实验步骤

4.运行结果 5.流程图 6.实验体会

一.实验目的

掌握C++程序函数的定义和调用方法,学会编写通用函数模块,掌握程序设计的基本方法并学会编写模块化的程序结构。

二.实验内容

(1)编写函数,求出100~200范围内的所有素数。

(2)输入一个整数n(2<=n<=1000),输出它的所有的素数因子。用函数int

prime(int num)来判断整数num是否为素数,例如,若输入2310,则输出:2,3,5,7,11。

(3)写一个函数验证歌德巴赫猜想:一个不小于6的偶数可以表示为两个素数之和。例如,6=3+3,8=3+5。

(4)[选做]编写函数int fun(int num),计算整数num的各位上的数字之积,并将计算结果作为函数值返回。例如,输入263,则返回36(36=2*6*3)。要求在主函数中可以反复调用函数fun,连续输入多个正整数并计算结果,直到输入0为止。

三.实验步骤

(1)根据函数的定义和调用方法,编写调用函数。

(2)函数参数的传递,了解形参和实参的关系,熟练利用函数返回值。

(3)用功能函数的方法办写程序判断素数的算法,得出程序,运行结果。

四.运行结果

S7_1

(1) 编写函数,求出100~200范围内的所有素数。

#include

int prime(int x)

{ for(int i=2;i

if(x%i==0) return 0;

return 1;

}

void main(){

for(int i=100;i<=200;i++)

{if(prime(i)==1)

cout<

}

}

运行结果 为 101. 103 107 109 113 127 131 137 139 149 151

157 163 167 173 179 181 191 193 197 199 共有21个数。

S7_2

2)输入一个整数n(2<=n<=1000),输出它的所有的素数因子。用函数int

prime(int num)来判断整数num是否为素数,例如,若输入2310,则输出:2,3,5,7,11。

#include

int prime(int num)

{ for(int i=2;i

if(num%i==0)

return 0;

return 1;

}

void main(){

int n;

cout<<"intput n\n";

cin>>n;

for(int i=2;i<=n/2;i++)

{ if(n%i==0&&prime(i)==1)

cout<

}

cout<

}

若输入2145,运行结果 为3 5 11 13 。

S7_3

(2) 写一个函数验证歌德巴赫猜想:一个不小于6的偶数可以表示为两个素数之和。例如,6=3+3,8=3+5。

#include

int prime(int x)

{ for(int i=2;i<=x/2;i++)

if(x%i==0)

return 0;

return 1;

} void main(){

int n;

cout<<"input n\n";

cin>>n;

for(int i=2;i

if(prime(i)==1&&prime(n-i)==1&&i<=n/2)

cout<

cout<

}

当输入56时,运行结果为 56=3+53 56=13+43 56=19+37。

当输入122时,以运行结果为 122=13+109 122=19+103 122=43+79

122=61+61

五.流程图

编写程序→完善程序→输入源程序→编译运行程序→写出运行结果

六.通过本章的学习我学会了函数的定义和调用方法,了解了函数参数的传递,了解形参和实参的关系,熟练利用函数返回值,用功能函数的方法办写程序判断素数的算法,获益匪浅。

教师评价 优 良 中 及格 不及格 教师签名 日期