【#文档大全网# 导语】以下是®文档大全网的小编为您整理的《C语言实验报告样本3(公约数 公倍数 三角形h)》,欢迎阅读!
C语言上机实验报告
一、实验目的
1. 掌握函数编程方法,包括:函数原型声明、函数参数传递、函数体算法设计以及利用通过函数组合实现新的功能;
2. 掌握包含一个.h头文件和一个.c/.cpp源文件的程序模块化设计方法。 二、实验环境
1. 硬件:计算机;
2. 软件:Windows XP操作系统,VC++6.0编程环境。 三、实验内容
1. 编程一个C语言程序,输入两个数,计算这两个数的最大公约数和最小公倍数。 【要求】:1)计算最大公约数和最小公倍数分别设计成两个函数;2)采用辗转相除法(如下图所示)来计算最大公约数;3)通过调用计算最大公约数函数实现求最小公倍数。
2. 编制一个C语言程序,输入三角形的三边边长a、b、c,判断此为何种类型三角形(等腰三角形、等边三角形、直角三角形、等腰直角三角形、一般三角形)。 【要求】:将判断三角形的功能设计成一个包含一个.h头文件和.ccp/.c的模块,在主模块main()中通过调用判断函数来判断三角形类型。 四、实验结果(实验报告撰写内容)
1. 给出实验内容1程序代码,输入两对数,输出两对数的最大公约数和最小公倍数。 2. 给出实验内容2的主模块.cpp、子模块.h和.cpp/.c三文件的程序代码,输入三角形三边 a、b和c的值,判断出三角形的类型。
实验内容1程序代码:
1
#include int gys(int,int); int gbs(int,int); void main() {
int m,n,y,b;
printf("请输入两个整数中间用空格隔开: "); scanf("%d %d",&m,&n); y=gys(m,n); b=gbs(m,n);
printf("最大公约数是: %d\n",y); printf("最小公倍数是: %d\n",b); }
int gys(int a,int b) {
int temp; if(a { temp=a; a=b; b=temp; }
while(temp!=0) { temp=a%b; a=b; b=temp; }
return(a); }
int gbs(int a,int b) {
int gys(int a,int b); int temp;
temp=gys(a,b); return(a*b/temp); }
实验内容2
主模块.cpp代码
2
#include #include "sjx.h"
triangle (float a,float b,float c); void main() {
float x,y,z;
printf("请输入三边长度\n"); scanf("%f %f %f",&x,&y,&z); triangle(x,y,z); }
子模块.h文件
#ifndef SJX_H_INCUDE #define SJX_H_INCUDE
triangle (float a,float b,float c); #endif
子模块.cpp文件
#include
triangle (float a,float b,float c) {
if(a+b>=c&&a+c>=b&&c+b>=a) { if(a==b||a==c||b==c) { if(a==b&&b==c) printf("等边三角形\n"); else if(a*a+b*b==c*c||a*a+c*c==b*b||b*b+c*c==a*a) printf("等腰直角三角形\n"); else printf("等腰三角形\n"); } else if(a*a+b*b==c*c||a*a+c*c==b*b||b*b+c*c==a*a) { printf("直角三角形\n"); } else printf("一般三角形\n"); } else printf("请输入正确的数值\n"); }
3
本文来源:https://www.wddqxz.cn/79593ba16b0203d8ce2f0066f5335a8102d266b7.html