当前位置: 首页 > news >正文

C语言进行实验:通过程序实现线算图取值【支持VC++ 6.0编辑器环境运行】

背景:

一、实验目的和要求

1、能描述数据基本类型及其常量的表示方法;

2、会对变量进行定义及初始化;

3、能使用运算符与表达式对变量赋值;

4、会描述C语句的概念及种类、C语言常用的输入/出方式;

5、会设计顺序结构程序;

6、能分析if … else …的三种语法的区别,会描述switch与break语句的作用;

7、能使用while循环、do-while循环和for循环的结构设计程序,能使用常见的循环嵌套,会描述break语句和continue语句的作用;

8、会定义、使用数组。

二、实验内容

1将工程中线算图人工查图方式改为程序取值。

对下图所示线算图设计算法,编写代码,实现通过输入横坐标参数获取纵坐标参数功能。

三、实验仪器、设备

计算机(装有VC++ 6.0或visual studio 2010);

四、实验原理

1、在工程中,线算图中的曲线,可近似为由n段线段构成,n的取值取决于曲线斜率变化的剧烈程度;

2、用数组存储线段的特征参数;

3、用选择语句判断输入参数是否越界;

4、用循环语句判断输入参数所处区间,选择合适的线段;

5、用表达式,根据输入参数,在选中的线段上取值,获得输出参数。 

五、实验步骤

1、已知线段起点坐标(x0,y0)和终点坐标(x1,y1),要求根据横坐标参数x求其对应线段上的纵坐标参数y。x∈(x0,x1)。

2、已知线段起点坐标(x0,y0)和终点坐标(x1,y1),要求根据横坐标参数x求其对应线段上的纵坐标参数y。(要求使用条件语句判断是否越界)

3、已知两个线段坐标。其中一个线段起点坐标为(x0,y0),终点坐标为(x1,y1);另一个线段起点坐标为(x1,y1),终点坐标为(x2,y2)。要求根据横坐标参数x求其对应线段上的纵坐标参数y。(要求综合利用数组、循环和条件知识)

4、对图1所示曲线,绘制程序流程图,编写代码,撰写实验报告。

、实验注意事项

1、当需要用比较复杂的逻辑表达式时,要避免发生优先级上的错误,可以使用最高优先级的运算符()将其括起来,这样既增加可读性,又不会出现不必要的错误。

2、输入和输出函数的使用过程中在格式控制的地方可能会出现错误。要严格按照格式控制的形式输入和输出数据。

3、if-else语句书写时应采用分层缩进的格式。

4、while语句的句法格式及用法。

5、for语句的正确使用方法。注意它的初始值、终止条件及步长的确定。

6、当循环不能停止(出现死循环),应该用Ctrl+break中断程序的运行。

7、在C语言中,定义数组时,其长度必须指定且必须用常量表示。

程序效果展示:

要求一(英文版,中文版此处不演示):

用户输入两个坐标,函数关系为y=nx,计算,这里不校验x取值范围

要求二(中文版加英文版演示)

用户输入两个坐标,函数关系为y=nx,计算,这里校验x取值范围

要求三(中文版加英文版演示)

用户输入三个坐标,函数关系为y=n1x,y=n2x,输入x,判断y处于哪个线段!!

VC++6.0编辑器运行效果:

主要代码:

这里一共写了三个程序,来完成对应的需求

//联系请加V:zew1040994588    //要求一代码
// 输入起点和终点的坐标printf("Please enter the horizontal coordinate of the starting point:");scanf("%f", &x0);printf("Please enter the ordinate of the starting point:");scanf("%f", &y0);printf("Please enter the horizontal coordinate of the end point:");scanf("%f", &x1);printf("Please enter the ordinate of the end point:");scanf("%f", &y1);
//联系请加V:zew1040994588//要求三代码
// 输入第二个线段的终点坐标以及已知的x1和y1printf("请输入第二个线段的终点坐标(x2, y2):");scanf("%d %d", &x2, &y2);// 计算第二个线段的斜率if (x2 - x1 != 0) {//n2 = (float)(y2 - y1) / (float)(x2 - x1);n2 = (y2 - y1) / (x2 - x1);//printf("x1值为%d\n",x1);//printf("y1值为%d\n",x1);//printf("x2值为%d\n",x2);	       //printf("y2值为%d\n",y2);//printf("x2 - x1 值为%d\n",x2 - x1);//printf("y2 - y1 值为%d\n",y2 - y1);//printf("计算n2值为%d\n",y2 - y1 / x2 - x1);//printf("n2值为%d\n",n2);} else {printf("Error: 第二个线段的斜率不存在");return 0;}

相关文章:

C语言进行实验:通过程序实现线算图取值【支持VC++ 6.0编辑器环境运行】

背景: 一、实验目的和要求 1、能描述数据基本类型及其常量的表示方法; 2、会对变量进行定义及初始化; 3、能使用运算符与表达式对变量赋值; 4、会描述C语句的概念及种类、C语言常用的输入/出方式; 5、会设计顺序…...

信息检索与数据挖掘|(四)索引构建

目录 📚硬件基础 📚基于块的排序索引方法 🐇BSBI算法(blocked sort-based indexing) 📚内存式单遍扫描索引构建方法 🐇SPIMI算法(single-pass in-memory indexing) 📚分布式索引构建方法 &#x1f4d…...

Ruby使用类组织对象

使用Object.new创建新对象,但是一次只使用一种方法,这是感受以对象为中心的Ruby编程的最佳方式之一。不过这种方式并不能很好地扩展,假如有一个正在运行地在线售票网站,然后其数据库必须处理数以百计地售票记录,那么可…...

Spring Boot 中常用的注解@RequestParam

Spring Boot 中常用的注解RequestParam RequestParam 是 Spring Framework 和 Spring Boot 中常用的注解之一,用于从请求中获取参数值。它通常用于处理 HTTP 请求中的查询参数(query parameters)或表单数据。下面详细解释 RequestParam 的用…...

Spark工作流程

Spark 的整个工作流程可以概括为以下步骤: 创建 SparkSession: 应用程序首先需要创建一个 SparkSession 对象,它是与 Spark 的交互入口。SparkSession 提供了对核心功能和各个模块的访问。 加载数据: 使用 SparkSession 提供的 AP…...

IDEA如何设置项目包名分级

按上面的勾选即可!...

消防应急疏散指示系统在某生物制药工厂项目的应用

安科瑞 华楠 摘要 消防应急照明和疏散指示系统由控制器、集中电源和灯具(疏散指示灯具、应急照明灯具)等几部分组成。系统采用17寸工业平板电脑、Windonws7系统,可支持联动报警、系统监控、故障报警、自检、备电、记录存储与查询、导光流、…...

C语言文件操作(上)

文章目录 一、为什么使用文件二、什么是文件1.程序文件2.数据文件3.文件名 三、文件的打开与关闭1.文件指针2.文件的打开和关闭fopen 与 fclose 四、文件的顺序读写01 字符输出函数:fputs02 字符输入函数:fgetc03 文本行输出函数:fputs04 文本…...

二叉树的前 中 后序的非递归实现(图文详解)

🎈个人主页:🎈 :✨✨✨初阶牛✨✨✨ 🐻强烈推荐优质专栏: 🍔🍟🌯C的世界(持续更新中) 🐻推荐专栏1: 🍔🍟🌯C语言初阶 🐻推荐专栏2: 🍔…...

.NET验收

验收通用模板: 1.该资料计划看几天? 实际看了几天? 计划7天,实际看了9天 2.多少天一篇总结?将总结列出来。 一周总结一篇。 博客地址:3.这个资料相较于之前资料共同的内容是什么? 不同的(需要强化学习)…...

C++11——lambda表达式

文章目录 1. C98对自定义类型的排序2. lambda表达式语法2.1 捕捉列表 3. lambda底层原理 1. C98对自定义类型的排序 在C98中,想要对自定义类型就行排序,我们得自己写仿函数来表明我们相对哪一项进行排序 struct Student {Student(string name, long id…...

美国加密货币交易和借贷平台Membrane Labs完成2000万美元融资

来源:猛兽财经 作者:猛兽财经 猛兽财经获悉,总部位于美国纽约的加密货币交易和借贷平台Membrane Labs今日宣布已完成2000万美元A轮融资。 参与本轮融资的投资机构包括:Brevan Howard Digital、Point72 Ventures、Jane Street Cap…...

8-k8s-污点与容忍

文章目录 一、概念二、相关操作三、实操污点NoSchedule四、实操污点NoExecute五、实操容忍 一、概念 污点与容忍 污点taints定义在节点之上的键值型属性数据。当节点被标记为有污点,那么意味着不允许pod调度到该节点。 容忍tolerations是定义在 Pod对象上的键值型属…...

钢铁异常分类140篇Trans 学习笔记 小陈读paper

钢铁异常分类 对比学习 比较好用 1.首先,为每个实例生成一对样本, 来自同一实例的样本被认为是正例, 来自不同实例的样本被认为是负例。 2.其次,这些样本被馈送到编码器以获得嵌入。 3.在对比损失[16]的影响下, …...

YOLOv5-理论部分

YOLOv5 作者: Ultralytics 论文源码: https://github.com/ultralytics/yolov5 Ultralytics:“超视觉技术” / “超视觉系统” 0. 引言 “YOLOv5 🚀 是世界上备受喜爱的视觉人工智能,代表了 Ultralytics 对未来视觉人工智能方法的开源研究&a…...

蓝桥等考C++组别一级004

第一部分:选择题 1、C L1(15分) 下列是编程语言的一项是( )。 A. C B. Word C. Excel D. PowerPoint 正确答案: A 2、C L1(15分) 仔细阅读以下程序代码,其中有…...

分布式服务的链路跟踪 Sleuth Micrometer zipkin OpenTelemetry

由来 在分布式应用开发过程中,一个请求会调用多个应用,会有那种需要知道各个应用之间耗时的想法,这样可以知道一个调用的总时长以及各个组件之间的处理耗时,后面方便定位问题。 理论依据 起源于 google dapper 论文 https://re…...

CUDA学习笔记4——自定义设备函数

自定义设备函数 核函数:__global__修饰;在设备中执行;设备函数:__device__修饰;在设备中执行;只能被核函数或其他设备函数调用;主机函数:__host__修饰(可省略&#xff0…...

微前端四:qiankun在开发中遇到的问题

在qiankun开发中会遇到很多问题,上一篇微前端三:qiankun 协作开发和上线部署其实也是在解决一些经常遇到的问题,下面的两点也算是比较经典的了 1、子应用图片路径问题 2、基座是Vue2.0 element ui 配合 子应用 Vue3.0 element plus 导致的样…...

Android DisplayPolicy增加一些动作,打开后台接口

Android DisplayPolicy增加一些动作,打开后台接口 前言一、了解android全局滑动事件的拦截二、修改1.DisplayPolicy.java修改 前言 一些后台接口 界面之类的不方便打开,但是测试需要用到,这里就添加一个10秒内上拉6下,打开一个后…...

XML Group端口详解

在XML数据映射过程中,经常需要对数据进行分组聚合操作。例如,当处理包含多个物料明细的XML文件时,可能需要将相同物料号的明细归为一组,或对相同物料号的数量进行求和计算。传统实现方式通常需要编写脚本代码,增加了开…...

Docker 离线安装指南

参考文章 1、确认操作系统类型及内核版本 Docker依赖于Linux内核的一些特性,不同版本的Docker对内核版本有不同要求。例如,Docker 17.06及之后的版本通常需要Linux内核3.10及以上版本,Docker17.09及更高版本对应Linux内核4.9.x及更高版本。…...

日语AI面试高效通关秘籍:专业解读与青柚面试智能助攻

在如今就业市场竞争日益激烈的背景下,越来越多的求职者将目光投向了日本及中日双语岗位。但是,一场日语面试往往让许多人感到步履维艰。你是否也曾因为面试官抛出的“刁钻问题”而心生畏惧?面对生疏的日语交流环境,即便提前恶补了…...

云原生核心技术 (7/12): K8s 核心概念白话解读(上):Pod 和 Deployment 究竟是什么?

大家好,欢迎来到《云原生核心技术》系列的第七篇! 在上一篇,我们成功地使用 Minikube 或 kind 在自己的电脑上搭建起了一个迷你但功能完备的 Kubernetes 集群。现在,我们就像一个拥有了一块崭新数字土地的农场主,是时…...

C++_核心编程_多态案例二-制作饮品

#include <iostream> #include <string> using namespace std;/*制作饮品的大致流程为&#xff1a;煮水 - 冲泡 - 倒入杯中 - 加入辅料 利用多态技术实现本案例&#xff0c;提供抽象制作饮品基类&#xff0c;提供子类制作咖啡和茶叶*//*基类*/ class AbstractDr…...

日语学习-日语知识点小记-构建基础-JLPT-N4阶段(33):にする

日语学习-日语知识点小记-构建基础-JLPT-N4阶段(33):にする 1、前言(1)情况说明(2)工程师的信仰2、知识点(1) にする1,接续:名词+にする2,接续:疑问词+にする3,(A)は(B)にする。(2)復習:(1)复习句子(2)ために & ように(3)そう(4)にする3、…...

大型活动交通拥堵治理的视觉算法应用

大型活动下智慧交通的视觉分析应用 一、背景与挑战 大型活动&#xff08;如演唱会、马拉松赛事、高考中考等&#xff09;期间&#xff0c;城市交通面临瞬时人流车流激增、传统摄像头模糊、交通拥堵识别滞后等问题。以演唱会为例&#xff0c;暖城商圈曾因观众集中离场导致周边…...

将对透视变换后的图像使用Otsu进行阈值化,来分离黑色和白色像素。这句话中的Otsu是什么意思?

Otsu 是一种自动阈值化方法&#xff0c;用于将图像分割为前景和背景。它通过最小化图像的类内方差或等价地最大化类间方差来选择最佳阈值。这种方法特别适用于图像的二值化处理&#xff0c;能够自动确定一个阈值&#xff0c;将图像中的像素分为黑色和白色两类。 Otsu 方法的原…...

(二)原型模式

原型的功能是将一个已经存在的对象作为源目标,其余对象都是通过这个源目标创建。发挥复制的作用就是原型模式的核心思想。 一、源型模式的定义 原型模式是指第二次创建对象可以通过复制已经存在的原型对象来实现,忽略对象创建过程中的其它细节。 📌 核心特点: 避免重复初…...

[Java恶补day16] 238.除自身以外数组的乘积

给你一个整数数组 nums&#xff0c;返回 数组 answer &#xff0c;其中 answer[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积 。 题目数据 保证 数组 nums之中任意元素的全部前缀元素和后缀的乘积都在 32 位 整数范围内。 请 不要使用除法&#xff0c;且在 O(n) 时间复杂度…...