1 / 14
文档名称:

C语言实验二报告.docx

格式:docx   大小:33KB   页数:14页
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

C语言实验二报告.docx

上传人:mh900965 2017/12/19 文件大小:33 KB

下载得到文件列表

C语言实验二报告.docx

文档介绍

文档介绍:北京电子科技学院(BESTI)
实验报告
课程:
程序设计基础
班级:
姓名:
学号:
成绩:
指导教师:
张晓昆
实验日期:
实验密级:
预****程度:
实验时间:
15:30~18:30
仪器组次:
必修/选修:
必修
实验序号:
2
实验名称:
函数编程练****br/>实验目的与要求:
主函数通常只处理输入和输出;掌握定义函数的方法;掌握函数实参与形参的对应关系,以及“值传递”的方式;掌握全局变量、局部变量、动态变量、静态变量的概念和使用方法,、了解函数的嵌套调用方法和递归调用方法。
观察堆栈窗口call stack,注意函数调用过程堆栈的动态变化。
,分别编译,再利用Project建立工程文件,然后连接执行,观察结果。
实验内容
素数(Prime Number),又称为质数,它是不能被1和它本身以外的其他整数整除的正整数。按照这个定义,负数、0和1都不是素数,而17之所以是素数,是因为除了1和17以外,它不能被2~16之间的任何整数整除。
任务1:试商法是最简单的判断素数的方法。用i=2~m-1之间的整数去试商,若存在某个m能被1与m本身以外的整数i整除(即余数为0),则m不是素数,若上述范围内的所有整数都不能整除m,则m是素数。采用试商法,分别用goto语句、break语句和采用设置标志变量并加强循环测试等三种方法编写素数判断函数IsPrime(),从键盘任意输入一个整数m,判断m是否为素数,如果m是素数,则按"%d is a prime number\n"格式打印该数是素数,否则按"%d is not a prime number\n"格式打印该数不是素数。然后分析哪一种方法可读性更好。
goto语句
#include <>
#include <>
int IsPrime(int n); //判断是否是素数的函数原型
int main()
{
int m;
printf("Please enter a integer:");
scanf("%d", &m); //用户输入欲判断的数
if( IsPrime(m) == 1){ //调用判断是否是素数的函数并输出结果
printf("%d is a prime number!\n", m);
}
else{
printf("%d is not a prime number!\n", m);
}
return 0; //返回0
} //主函数结束
int IsPrime(int n) //判断是否是素数的函数
{
int i = 2;
int j = 0;
if(n < 2){ //若n小于2,返回0值
return 0;
}
if(n == 2){
return 1;
}
loop:if(n % i == 0){ //利用goto语句
i++;
j++;
goto loop;
}
if(j >= 1){ //若j大于2,则说明能被2~n-1之间的数整除,返回0;否则返回1
return 0;
}
else{
return 1;
}
} //子函数结束
break语句
#include <>
#include <>
int IsPrime(int n); //判断是否是素数的函数原型
int main()
{
int m;
printf("Please enter a integer:");
scanf("%d", &m); //用户输入欲判断的数
if( IsPrime(m) == 1){ //调用判断是否是素数的函数并输出结果
printf("%d is a prime number\n", m);
}
else{
printf("%d is not a prime number\n,", m);
}
return 0; //返回0
} //主函数结束
int IsPrime(int n) //判断是否是素数的函数
{
int i;
int j = 0;
if( n < 2 ){ //若n小于2,返回0值
return 0;
}
for(i = 2; i <= n - 1; i++){
if( n % i == 0){ //利用试商法判断是否能被2~n-1之间的数整除
j++;
}
if(j > 1){ //若j大于2,则说明能被2~n-1之间的数整除,返回0;否则返回1
retu