C语言顺序结构程序设计——对调数字and判断三角形
最全C系列题目!从0到管理系统
一、C语言数据类型及输出——体重是否正常、球的体积、计算存银行利息and浮点数长度与精度
二、C语言运算符与表达式——输出逆序数and二进制包含0和1的数量and判断是否为2的整数次幂的两种办法
三、C语言基本输入输出程序设计——计算当前时间and转换大写姓名and工资信息表
四、C语言顺序结构程序设计——对调数字and判断三角形
五、C语言选择结构程序设计——“21点”(BlackJack)游戏and一元二次方程and能否被3,5,7,9整除
六、C语言函数、指针应用程序设计——回文数判断and检验子串and仓库库存管理程序
七、C语言输入输出及选择结构程序设计的综合应用——简单超级战士游戏and 取牙签游戏
八、C语言循环结构及数组排序的综合应用——冒泡、插入、选择排序棒图显示and两个超长数相乘
九、C语言函数及数组的综合应用——儿童数学运算 and 递归求最大公约数
十、C语言函数及复杂数据结构的综合应用——简单户籍管理系统
C语言顺序结构程序设计——对调数字and判断三角形
- 最全C系列题目!从0到管理系统
- 一、实验目的:
- 二、实验要求
- 三、代码
- 1.对调数字
- 2.判断三角形
- 总结
一、实验目的:
1.掌握,使用标准输入/输出函数进行常见数据类型的数据的输入/输出方法。
2.初步培养编制程序框图和源程序、准备测试数据以及实际调试程序的独立编程能力。
二、实验要求
1.输入10个整数,将其中最小的数与第一个数对调,把最大的数与最后一个数对调,然后按顺序输出这10个数。
2.输入两个三角形在直角坐标系下的顶点坐标(实型),首先分别判断它们能否构成三角形,如能的话,指出是何种三角形(等腰三角形、直角三角形、等腰直角三角形、等边三角形、一般三角形),然后判断两个三角形是否相似。
三、代码
1.对调数字
/** 文件名称: 基本实验4第一题* 作者: 不知何人* 完成日期: 2021.4.3* 内容摘要: 无* 注意: 无
*/#include<stdio.h>int main() {int a[10]; //定义用于装10个数的数组 int m, n, i, j; //m,n,i,j 均为for循环中的递增数 printf("请输入10个数,并用空格隔开\n");for (n = 0; n < 10; n++){scanf_s("%d", &a[n]);}//通过for循环将10个数依次录入数组 int max, min, b, c, p, q; //定义最大值,最小值,以及中间变量。 max = min = a[0]; //设最大值最小值初始值为a[0] for (i = 0; i < 10; i++) {if (max < a[i]) {max = a[i];b = i;}}//得出最大值的序号,记录为b for (j = 0; j < 10; j++) {if (min > a[j]) {min = a[j];c = j;}}//得出最小值的序号,记录为c p = a[b];a[b] = a[9];a[9] = p;//将最大值与第10位数交换位置 q = a[c];a[c] = a[0];a[0] = q;//将最小值与第1位数交换位置 printf("重新排序后为:");for (m = 0; m < 10; m++) {printf("%d ", a[m]);//按交换后的顺序依次输出各数 }
}
2.判断三角形
* 文件名称: 基本实验4第二题* 作者: 不知何人 * 完成日期: 2021.4.3* 内容摘要: 无* 注意: 无
*/
#include<stdio.h>
#include<math.h>int main() {float a1, a2, a3, b1, b2, b3;float x1, x2, x3, y1, y2, y3; //定义6个点的横纵坐标 printf("请依次输入第一个三角形的顶点坐标,中间用空格隔开,如:3 4\n");scanf("%f %f %f %f %f %f", &a1, &b1, &a2, &b2, &a3, &b3);printf("请依次输入第二个三角形的顶点坐标,中间用空格隔开,如:3 4\n");scanf("%f %f %f %f %f %f", &x1, &y1, &x2, &y2, &x3, &y3);//分别输入两个三角形顶点坐标 double m1, n1, q1, m2, n2, q2; //定义两个三角形的三边长 m1 = sqrt((a1 - a2) * (a1 - a2) + (b1 - b2) * (b1 - b2));n1 = sqrt((a1 - a3) * (a1 - a3) + (b1 - b3) * (b1 - b3));q1 = sqrt((a2 - a3) * (a2 - a3) + (b2 - b3) * (b2 - b3));m2 = sqrt((x1 - x2) * (x1 - x2) + (y1 - y2) * (y1 - y2));n2 = sqrt((x2 - x3) * (x2 - x3) + (y2 - y3) * (y2 - y3));q2 = sqrt((x1 - x3) * (x1 - x3) + (y1 - y3) * (y1 - y3));//两点距离公式 边长=根号下(两点横坐标差的平方+两点纵坐标的平方) if ((m1 + n1) > q1 && (m1 + q1) > n1 && (n1 + q1) > m1) //判断是否可以构成三角形 {printf("前三个顶点可以构成三角形,");if (fabs(m1 - n1) < 0.01 || fabs(m1 - q1) < 0.01 || fabs(n1 - q1) < 0.01) //判断是否等腰三角形 {if (fabs(m1 - n1) < 0.01 && fabs(m1 - q1) < 0.01 && fabs(n1 - q1) < 0.01)//是等腰三角形之后再进行二次判断,如果三边都相等则为等边三角形 {printf("且为等边三角形。\n");}else if (fabs(q1 * q1 - m1 * m1 - n1 * n1) < 0.01 || fabs(n1 * n1 - m1 * m1 - q1 * q1) < 0.01 || fabs(m1 * m1 - n1 * n1 - q1 * q1) < 0.01)//是等腰三角形之后再进行二次判断,如果有两边平方之和等于第三边平方,则为等腰直角形 {printf("且为等腰直角三角形。\n");}else //最后不属于前两种的,则是普通的等腰三角形 {printf("为等腰三角形\n");}}else if (fabs(q1 * q1 - m1 * m1 - n1 * n1) < 0.01 || fabs(n1 * n1 - m1 * m1 - q1 * q1) < 0.01 || fabs(m1 * m1 - n1 * n1 - q1 * q1) < 0.01)//因为已经不满足两边相等的条件,所以此处如果满足两边平方之和等于第三边平方,则说明为直角三角形。(排除等腰直角) {printf("且为直角三角形。\n");}else //不满足上述情况的三角形只是普通三角形 {printf("为普通三角形。\n");}}else //不满足两边之和大于第三边,无法构成三角形 {printf("前三个顶点无法构成三角形。\n");}if ((m2 + n2) > q2 && (m2 + q2) > n2 && (q2 + n2) > m2) {printf("后三个顶点可以构成三角形,");if (fabs(m2 - n2) < 0.001 || fabs(m2 - q2) < 0.001 || fabs(n2 - q2) < 0.001) {if (fabs(m2 - n2) < 0.01 && fabs(m2 - q2) < 0.01 && fabs(n2 - q2) < 0.01){printf("且为等边三角形。\n");}else if (fabs(q2 * q2 - m2 * m2 - n2 * n2) < 0.01 || fabs(n2 * n2 - m2 * m2 - q2 * q2) < 0.01 || fabs(m2 * m2 - n2 * n2 - q2 * q2) < 0.01){printf("且为等腰直角三角形。\n");}else{printf("为等腰三角形。\n");}}else if (fabs(q2 * q2 - m2 * m2 - n2 * n2) < 0.01 || fabs(n2 * n2 - m2 * m2 - q2 * q2) < 0.01 || fabs(m2 * m2 - n2 * n2 - q2 * q2) < 0.01){printf("且为直角三角形。\n");}else{printf("为普通三角形。\n");}}else{printf("无法构成三角形。\n");}//与第一个三角形同理 float r1, s1, t1;//定义两三角形的对应比例 r1 = m1 / m2;s1 = n1 / n2;t1 = q1 / q2;if (fabs(r1 - s1) < 0.01 && fabs(s1 - t1) < 0.01)//通过对应边比例是否相同,判断是否相似 {printf("两三角形相似。\n");}elseprintf("两三角形不相似。\n");}
程序中没有对边长按照从小到大进行排序(或反向),存在漏判,只是个小问题,大家记得改一下哈。
总结
我把去年刚学C语言时的代码发出来供新人们参考,别嫌弃啊哈哈(虽然确实很烂!实验报告我也都发了,在主页,我发的全是免费下载)
非常感谢您的观看
C语言顺序结构程序设计——对调数字and判断三角形相关推荐
- c语言顺序结构程序设计第4章答案,第4章顺序结构程序设计习题及答案.doc
第4章顺序结构程序设计习题及答案 第4章 顺序结构程序设计 4-1 C语言的控制语句有哪些? 答:C语言有九条控制语句: 条件语句:if-else语句. 开关语句:switch语句. 当循环语句:wh ...
- C语言顺序结构程序设计PPT,C语言习题集与实验指导 教学课件 伍鹏、杜红、王圆妹、邓绍金 第3章 顺序结构程序设计.pdf...
[摘要]第3章 顺序结构程序设计 第3章 顺序结构程序设计 当你对C语言程序设计有了一定了解和掌握后, 在处理一些简单的任务时,若想根据程序书写的过程 顺序执行程序,这时应该如何处理呢? •顺序结构 ...
- C语言输入函数换行符赋给变量B,C语言程序设计第3章顺序结构程序设计.pptx-资源下载在线文库www.lddoc.cn...
C语言程序设计第3章 顺序结构程序设计.pptx 第 6章 数组第 7章 函数第 8章 结构体.共用体和枚举类型第 9章 指针第 10章 文件目录页 Contents page第 1章 初识 C语言第 ...
- c语言 转换字母 顺序结构,C语言程序设计 顺序结构程序设计 C教学设计3单元V1.0.doc...
教学设计 河北工业职业技术学院 "C语言程序设计"教学设计 系 别: 计算机技术系 设计教师: 宋铁桥 设计时间: 2017年4月25日 教学内容 第三单元 顺序结构程序设计 授课 ...
- C语言程序顺序结构1交换变量,C语言程序设计 顺序结构程序设计 习题.doc
C语言程序设计 顺序结构程序设计 习题 一.选择题 1.putchar ( )函数可以向终端输出一个________ A)整型变量表达式值????? B)实型变量值 C)字符串???????????? ...
- c语言循环结构程序设计视频,第13讲:循环结构程序设计1
C语言是计算机科学及应用专业的一门重要的专业基础 课,也是全校各 个专业的公共必修课程.它既可以为其它专业课程奠定程序设计的基础,又可以作为其它专业课程的程序设计的工具. 通过本课程的学习,应掌握计算 ...
- c语言 教学目标,c语言选择结构程序设计教学目标
c语言选择结构程序设计教学目标 <选择结构程序设计>教学目标 能力要求: a) 能够使用 if 语句编写条件选择程序 b) 能够使用嵌套 if 语句和 switch 语句编写多分支选择结构 ...
- c语言选择结构作用,c语言选择结构程序设计教案
<c语言选择结构程序设计教案>由会员分享,可在线阅读,更多相关<c语言选择结构程序设计教案(16页珍藏版)>请在人人文库网上搜索. 1.选择结构程序设计(一)说明内容1关系运算 ...
- c语言程序结构设计教案,大学课程-c语言选择结构程序设计教案
版权声明:以上文章中所选用的图片及文字来源于网络以及用户投稿,由于未联系到知识产权人或未发现有关知识产权的登记,如有知识产权人并不愿意我们使用,如果有侵权请立即联系:55525090@qq.com,我 ...
最新文章
- IBM超越谷歌抵达量子计算里程碑:研制出50量子位计算机
- Linux 内核网络子系统 总结 (未完待续)
- HDU1074 Doing Homework
- 利用被入侵的路由器迈入内网——抓包,利用路由器漏洞入侵,进行流量劫持...
- python 爬虫源代码-python 爬虫-1:下载网页源代码
- redis集群学习一些记录
- centos7 编译安装mysql-5.7.18
- Java高级语法笔记-抽象类
- word删除内容后不删除书签_Word涨薪88式第三式:书签的妙用
- 问题记录_初始化带有string的结构体
- Tina-TI 电路仿真下载、安装、简单功能介绍
- DB9 串口母对母转接头是个坑
- linux 桥,Linux网桥
- NLP入门学习(一):搜狗新闻语料库的获取与预处理
- 相似剩余金额宝数值添加的动画
- (修改完善)SpringBoot+Mybatis-Plus使用webSocket实现一对一聊天
- 解决mac下adb无法找到手机
- Win10大更新后(悦米)机械键盘无法使用
- Rar5.20 key
- Linux简单入门命令
热门文章
- 基础摄像头四轮智能车的制作
- OpenMP #pragma omp parallel for并行化小探究
- HyperWorks学习笔记(一)
- UTM虚拟机-首款iOS虚拟机
- linux查看cpt硬盘命令,常用Linux命令、文件操作解压缩相关、Linux命令大全、测试查询...
- C++ 加速(卡常)技巧【超级 快读、快写】
- 使用windows7的一些小技巧
- 优先级队列--大根堆和小根堆
- 利用无线网络数据包分析无线网络安全
- 晶圆级封装(WLCSP) 倒片封装(Flip-Chip)