C语言程序设计实验报告(函数).doc_第1页
C语言程序设计实验报告(函数).doc_第2页
C语言程序设计实验报告(函数).doc_第3页
C语言程序设计实验报告(函数).doc_第4页
C语言程序设计实验报告(函数).doc_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

C语言程序设计实验报告(实验名称:函数)1 实验目的(1) 掌握函数的定义方法、调用方法、参数说明以及返回值;(2) 掌握实参与形参的对应关系,以及参数之间的“值传递”的方式;(3) 掌握函数的嵌套调用及递归调用的用的设计方法;(4) 在编程过程中加深理解函数调用的程序设计思想。2 实验内容(1) 编写一个函数primeNum(int x),功能是判别一个数是否为素数。要求: 在主函数中输入一个整数x(直接赋值或从键盘输入); 函数类型为空值(void),调用primeNum( )函数后,在函数中输出x是否为素数的信息,输出格式为“x is a prime number”或”x is not a prime number”; 分别输入一下数据:0,1,2,5,9,13,59,121,并运行程序,检查结果是否正确。(2) 编写函数 mulNum(int a,int b),它的功能是用来确定a和b是否是整数倍的关系。如果a是b的整数倍,则函数返回值为1,否则函数返回值为0。要求: 在主函数中从键盘输入一对整型数据a和b; 调用函数后,根据返回值对a和b的关系进行说明。例如,在主函数中输入:10,5,则输出“10 is a multiple of 5”; 分别输入下面几组数据进行函数的正确性测试:1与5,5与5,6与2,6与4,20与4,37与9。 3 算法描述流程图 (1) primeNum(int x)(判别一个数是否是素数)函数流程图主函数流程图:声明变量n输入n判断n是否为素数?输出该数是素数输出该数不是素数结束假真提示输入一个数开始判断素数函数流程图:定义函数primNum(int x)声明变量x及循环变量ii=0或i=1?i=2 返回0值结束假真真返回1值假真开始假 i+1i x?x% i=0?(2)mulNum(int a,int b)(确定 a和b是否是整数倍的关系)函数流程图 主函数流程图: 声明变量m、n输入m、n判断m是否为n的倍数?输出m是n的倍数输出m不是n的倍数结束假真提示输入两个数开始判断倍数流程图:定义函数mulNum(int a,int b)声明变量a、ba%b=0? 返回0值结束真返回1值假开始4 源程序(1) 判断某个数是否是素数#include int primNum(int x) /*编写函数判断某个数是否是素数*/int i;if (x=0|x=1) /*当x等于1或等于0时判断是否为素数 */return 0;for (i=2;ix;i+) /* 当x大于2时判断不为素数的数 */if (x%i=0)return 0; if (x%i) /* 当x等于2或不满足上述条件时时判断出该数是素数 */return 1;void main()int n ;printf(Please input an integer:); /* 提示从键盘输入一个数x */scanf(%d,&n);if (primNum(n)=1) /* 调用定义的函数 */ printf(%d is a prime numbern,n); /* 由函数得出结论判断是否为素数 */else printf(%d is not a prime numbern,n);(2)个数是否是整数倍关系#include int mulNum(int a,int b)/* 定义函数确定两个数是否有整数倍关系*/ if (a%b=0) /* 判断出a是b的整数*/ return 1; else /* 判断出a不是b的整数*/ return 0;void main () int m,n; printf (please input tow integers:n); /*提示从键盘输入两个数 */scanf (%d%d,&m,&n); /*从键盘输入两个数的值 */ if(mulNum(m,n)=1) /*调用定义的函数并判断输出相应的结果*/ printf(%d is a multiple of %dn,m,n); else printf(%d is not a multiple of %dn,m,n);5 测试数据(1)实验(1)测试数据为0,1,2,5,9,13,59,121 运行结果当测试数据0时 当测试数据1时当测试数据2时 当测试数据5时当测试数据9时当测试数据13时当测试数据59时当测试数据121时(2) 实验2测试的数据1与5,5与5,6与2,6与4,20与4,37与9。运行结果 当测试1与5时当测试5与5时当测试6与2时当测试6与4时当测试20与4时当测试37与9时6出现问题及解决方法1)在判断某个数是否是素数的本实验中,我在使用循环遍历判断x是否为素数的时候循环体的内容错误地编写为: for (i=2;ix;i+) if (x%i=0) return 0; else return 1; 导致程序不能正确地按照设想的结果运行,在判断清循环体的执行过程后将程序正确地改为了: for (i=2;ix;i+) if (x%i=0) return 0; 2)在判断确定两个数是否是整数倍关系的本实验中,我在定义两个形参时错误地编写成了(int a ,b),经检查后改为正确格式(int a ,int b)。3)此外,在编写程序的时候,在标点符号上还有一些细节上的疏漏,如:标点没有在英文的状态下使用,还有一条语句结束后遗漏了分号“ ; ”。7实验心得本次实验,我掌握了一些具体函数的定义和

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论