




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、C语言程序设计实验报告1 实验目的(1)掌握函数的定义方法、调用方法、参数说明以及返回值;(2)掌握实参与形参的对应关系,以及参数之间的“值传递”的方式;(3)掌握函数的嵌套调用及递归调用的设计方法;(4)在编程过程中加深理解函数调用的程序设计思想。2 实验内容(1)编写一个函数primeNum(int x),功能是判断一个数是否为素数。(2)输入三个整数,求最大值和最小值。(3)编写函数mulNum(int a,int b),它的功能是用来确定a和b是否是整数倍的关系。如果a是b的整数倍,则函数返回值为1,否则函数的返回值为0。(4)编写两个函数,一个函数gcd( )的功能是求两个整数的最大
2、公约数,另一个函数mul( )的功能是求两个整数的最小公倍数。3 算法描述流程图(1)编写一个函数primeNum(int x),功能是判断一个数是否为素数。1 / 9(2)输入三个整数,求最大值和最小值。(3)编写函数mulNum(int a,int b),它的功能是用来确定a和b是否是整数倍的关系。如果a是b的整数倍,则函数返回值为1,否则函数的返回值为0。(4)编写两个函数,一个函数gcd( )的功能是求两个整数的最大公约数,另一个函数mul( )的功能是求两个整数的最小公倍数。4 源程序(1)编写一个函数primeNum(int x),功能是判断一个数是否为素数。#include<
3、;stdio.h>void primeNum(int x)int i,k;if(x=0|x=1)printf("%d is not a prime numbern",x);else for(i=2;i<=x/2;i+)if(x%i=0)k=0; if(k=0) printf("%d is not a prime numbern",x); else printf("%d is a prime numbern",x);void main()int m;printf("请输入一个数:");scanf(&quo
4、t;%d",&m); primeNum(m);(2)输入三个整数,求最大值和最小值。#include<stdio.h>int getMax(int a,int b,int c)int max=a;if(b>max)max=b;if(c>max)max=c;return max;int getMin(int a,int b,int c)int min=a;if(b<min)min=b;if(c<min)min=c;return min;main()int x,y,z,m,n;printf("请输入三个数:");scanf(
5、"%d%d%d",&x,&y,&z); m=getMax(x,y,z);n=getMin(x,y,z);printf("最大值是%dn",m);printf("最小值是%dn",n);(3)编写函数mulNum(int a,int b),它的功能是用来确定a和b是否是整数倍的关系。如果a是b的整数倍,则函数返回值为1,否则函数的返回值为0。#include<stdio.h>int mulNum(int a,int b)if(a%b=0)return 1;elsereturn 0;main()int
6、x,y,m;printf("请输入两个整数:");scanf("%d%d",&x,&y); m=mulNum(x,y);if(m=1)printf("%d is a multiple of %dn",x,y);if(m=0)printf("%d is not a multiple of %dn",x,y);(4)编写两个函数,一个函数gcd( )的功能是求两个整数的最大公约数,另一个函数mul( )的功能是求两个整数的最小公倍数。#include<stdio.h>int gcd(int
7、x,int y)int t,i;t=x<y?x:y;for(i=t;i>=1;i-)if(x%i=0&&y%i=0)break; return i;int mul(int x,int y, int z)int t,k;t=x>y?x:y;for(k=t;k<=x*y;k+)if(k%x=0&&k%y=0)break;return k;main()int a,b,m,n;printf("请输入两个正整数:");scanf("%d%d",&a,&b);m=gcd(a,b);n=mul(a
8、,b,m);printf("最大公约数是: %dn最小公倍数是: %dn",m,n);5 测试数据素数判断:0,1,2,5,9,13,59,121;求三个数中的最大最小值:4 ,8 ,9;8,4,9;8,9,4;判断两个数是否是倍数关系:1与5,5与5,6与2,6与4,20与4,37与9 。求两个数的最大公约数和最小公倍数:10和15;24和18;12和24;6 运行结果素数判断求三个数中的最大最小值判断两个数是否是倍数关系求两个数的最大公约数和最小公倍数7 出现问题及解决方法 实验(1)要求函数类型为空值(void),不能有返回值,且要求在函数中输出是否为素数;解决方法:
9、if(x%i=0)k=0; if(k=0) printf("%d is not a prime numbern",x); else printf("%d is a prime numbern",x);实验(5)要求将最大公约数与两个整数一起作为实参传递给函数mul(),以此求出最小公倍数;解决方法:int mul(int x,int y, int z)int t,k;t=x>y?x:y;for(k=t;k<=x*y;k+)if(k%x=0&&k%y=0)break;return k;没有用到变量z。或者:int mul(int x,int y, int z) k=x*y/z;
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 村集体资金入股合同范本
- 鱼船买卖合同协议书模板
- 船员的正规劳务合同范本
- 芯模板行业期货合同范本
- 游艇修理合同协议书模板
- 照明灯安装合同补充协议
- 高速便道租用协议书范本
- 肇庆正规劳务派遣协议书
- 高价回购铝合金合同范本
- 理发店长期消费合同范本
- 《大模型原理与技术》全套教学课件
- 《出口退税培训》课件
- 雾化吸入疗法课件
- 高考补习班招生策划书策划方案
- 康明斯产品合格证
- 矿山废水处理行业调研及投资前景分析报告
- DB13 5808-2023 餐饮业大气污染物排放标准
- 【五升六暑期阅读】专题10.环境描写及其作用-2024年五升六暑期阅读专项提升(统编版)5
- 【电商直播对消费者购买行为影响:以抖音直播为例开题报告1800字】
- AQ 2003-2018 轧钢安全规程(正式版)
- (高清版)WST 348-2024 尿液标本的采集与处理
评论
0/150
提交评论