C语言程序设计大作业
更新时间:2023-09-05 13:45:01 阅读量: 教育文库 文档下载
C 语 言 程 序 设 计
理 论 课 综 合 训 练
任课教师:□□□
学生学号:□□□□□□□□□□
学生姓名:□□□
所在班级:□□□□□□□
项目名称:□□□□□□□□□□
--------------------------------------------------------- 教师评语(总分20分):
(1)基本要求(12分):
(2)创新点(2分):
(3)实用性(2分):
(4)技术水平(2分):
(5)卷面综合(2分):
教师签名:
2011年 6月 10 日
一、项目简介
本项目所完成的功能包括求三角形面积、一元二次方程求根和排序,是学习生活中的常用计算工具,具有很强的实用性。本程序包括5个函数模块,在主函数中实现了菜单功能,在窗口菜单提示下,选择数字键完成所需功能,方便用户操作。
sjxmj()是求三角形面积函数模块,键盘输入三角形三边之长a、b、c,根据下面公式计算三角形面积。 p=(a+b+c)/2 s=p(p a)(p b)(p c)
如果两边之和大于第三边不成立,输出错误信息。
root()是一元二次方程求实根模块,键盘输入二次项系数a、一次项系数b、常数项c,根据下面公式计算两个实根。
b b2 4ac
x12= 2a
如果b-4ac<0,输出无实根信息。
paixu()是排序函数模块,主要读写磁盘文件数据。程序运行前,必须先在工作区文件夹(或运行程序文件所在文件夹)建立一个文本文件inpaixu.txt,文件中输入不超过100个整数,数据之间用空格或用回车换行符间隔。排序结果输出在文本文件outpaixu.txt中。
mysort()是冒泡法排序模块,paixu()函数是本函数的调用函数,所用算法为冒泡排序算法。 2
二、运行测试结果
(1) 求三角形面积
在窗口菜单提示下选择数字键1
输入三边之长(用逗号间隔):
3,4,5<Enter>
s=6.000000
再次测试
输入三边之长(用逗号间隔):
1,2,3<Enter>
输入数据错误!!!
(2) 求一元二次方程实根
在窗口菜单提示下选择数字键2,分别进行两组测试。
输入方程系数a,b,c(用逗号间隔):
1,-3,2<Enter>
x1=2.000000,x2=1.000000
输入方程系数a,b,c(用逗号间隔):
1,2,3<Enter>
方程无实根!!!
(3) 排序
先在工作区文件夹建立建立一个文本文件inpaixu.txt,文件中输入10个整数。运行程序,在窗口菜单提示下选择数字键3,排序结果输出在文本文件outpaixu.txt中。
三、程序清单
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include <conio.h>
double sjxmj(double a,double b,double c);
int root(double a,double b,double c,double *r1,double *r2); void mysort(int x[],int m);
void paixu();
//主函数模块
void main()
{ int x;
double a,b,c,s,x1,x2;
while(1)
{
system("cls"); //stdlib.h printf(" ※※※ 实用计算器 ※※※\n"); printf("┏━━━━━━━━━━━━━┓\n"); printf("┃ 1 ┉ 三角形面积 ┃\n"); printf("┃ 2 ┉ 一元二次方程求根 ┃\n"); printf("┃ 3 ┉ 排序 ┃\n"); printf("┃ 0 ┉ 结束 ┃\n"); printf("┗━━━━━━━━━━━━━┛\n"); printf("输入选择(0-3):"); scanf("%d",&x);getchar(); switch(x) { case 1: printf("输入三边之长(用逗号间隔):\n"); scanf("%lf,%lf,%lf",&a,&b,&c); s=sjxmj(a,b,c); if(s) else printf("输入数据错误!!!\n"); printf("按任意键返回主菜单\n"); getch(); // conio.h break; printf("输入方程系数a,b,c(用逗号间隔):\n"); scanf("%lf,%lf,%lf",&a,&b,&c); s=root(a,b,c,&x1,&x2); if(s) printf("s=%f\n",s); case 2:
} } else printf("方程无实根!!!\n"); printf("按任意键返回主菜单\n"); getch(); break; printf("在inpaixu.txt文件中输入数据(不超过100个,数据之间用空格或回车)\n"); printf("输入数据后关闭该文件,按回车键开始排序\n");getchar(); paixu(); printf("排序结果输出到outpaixu.txt文件,按任意键返回主菜单\n"); getch(); break; break; printf("输入选择错误,按任意键重新选择\n");getch(); case 3: case 0: default: if(x==0)break;
printf("再见!!!,按任意键结束\n");
}
//求三角形面积
double sjxmj(double a,double b,double c)
{
{
}
else
}
//一元二次方程求实根
int root(double a,double b,double c,double *r1,double *r2) { double d;
d=b*b-4*a*c;
if(d>=0)
{
*r1=(-b+sqrt(d))/(2*a); *r2=(-b-sqrt(d))/(2*a); return 1; s=0; return s; p=(a+b+c)/2.0; s=sqrt(p*(p-a)*(p-b)*(p-c)); double p,s; if(a+b>c && b+c>a && c+a>b)
else
}
//读inpaixu.txt文件中数据,排序后输出到outpaixu.txt文件 void paixu()
{ FILE *fp1,*fp2; //stdlib.h
int t,n=0,a[100];
fp1=fopen("inpaixu.txt","r"); //读文件
if(fp1==NULL)
{
}
fp2=fopen("outpaixu.txt","w"); //写文件
if(fp2==NULL)
{
}
while(1)
{
}
mysort(a,n); //调用函数,将a数组中的n个数排序 for(t=0;t<n;t++)
fprintf(fp2,"%d\n",a[t]);
fclose(fp1);
fclose(fp2);
}
// m个整数由大至小排序,paixu()函数调用该函数 void mysort(int x[],int m)
{
} int k,j,t; for(j=0;j<m-k;j++) if(x[j]<x[j+1]) { t=x[j];x[j]=x[j+1];x[j+1]=t;} for(k=1;k<m;k++) if(feof(fp1))break; t=fscanf(fp1,"%d",&a[n]); //if(t==EOF)break; //EOF为文件结束标志(-1) n=n+1; printf("打开inpaixu.txt文件失败。\n"); fclose(fp1);return; printf("打开inpaixu.txt文件失败。\n"); return; return 0;
正在阅读:
C语言程序设计大作业09-05
关爱他人很简单作文700字06-19
现场办公室及会议室上墙图表布置06-07
《将相和》第二课时教学设计 - 图文01-15
陕西省西安市铁一中学2019年高三上学期第一次模拟生物试卷 Word版含解析11-29
2017-2018学年高中历史选修三(人教版 练习): - 第五单元 烽火03-23
政风行风评议自查报告04-22
辽宁科技大学近代史题库(761页)12-08
Linux基本命令使用05-27
- exercise2
- 铅锌矿详查地质设计 - 图文
- 厨余垃圾、餐厨垃圾堆肥系统设计方案
- 陈明珠开题报告
- 化工原理精选例题
- 政府形象宣传册营销案例
- 小学一至三年级语文阅读专项练习题
- 2014.民诉 期末考试 复习题
- 巅峰智业 - 做好顶层设计对建设城市的重要意义
- (三起)冀教版三年级英语上册Unit4 Lesson24练习题及答案
- 2017年实心轮胎现状及发展趋势分析(目录)
- 基于GIS的农用地定级技术研究定稿
- 2017-2022年中国医疗保健市场调查与市场前景预测报告(目录) - 图文
- 作业
- OFDM技术仿真(MATLAB代码) - 图文
- Android工程师笔试题及答案
- 生命密码联合密码
- 空间地上权若干法律问题探究
- 江苏学业水平测试《机械基础》模拟试题
- 选课走班实施方案
- 程序设计
- 作业
- 语言
- 事业单位考试行政职业能力测试答题技巧:定义判断解题技巧
- 水合肼
- 人教版五年级数学上册第五单元第八课时_组合图形的面积练习课
- 普通动物学 刘凌云 课后习题答案
- 中国汽车电动天窗行业市场调查及未来五年盈利战略研究报告
- WHO抗菌药物DDD值
- 3网络文化与伦理问题3 西南大学继续教育学院 0948《网络文化与伦理》章节测试参考答案
- GARP选股策略--成长与价值并重
- 学校食堂安全协议书
- 精准扶贫贫困户登记表
- 员工餐券
- excel 联动 三级 查找省市
- 2017-2022年中国客机产业深度调研与投资机遇研究报告(目录)
- 富乐山旅游
- 乡镇卫生院职工满意度调查表
- 大学体验英语自主学习4级标准答案
- 第五章_晶体的能带理论
- 精美电子报模板
- 2019利率变化演示教学
- 高考地理二轮专题复习专题二地球上的大气2常见天气系统练习