18/03/2021C语言部分的作业序言从市场上大量可用的抵押贷款产品中选择合适的抵押贷款交易对许多购房者来说是一个重要的决定。在此作业中,要求您开发一个C程序,以根据客户的要求从mortgage.txt数据库中选择合适的抵押贷款交易。您需要从课程学习页面的评估区下载mortgage.txt数据库,然后将其保存到您的作业项目文件夹中。数据库文件包含许多抵押贷款交易。每行包含以下由空格分隔的抵押信息:贷方交易期限(年)初始利率(%)此后利率(%)贷款价值(%)产品费用(£)下面的示例代码让您了解如何从一个txt文件中读取数据。可以从课程学习页面的评估区下载data.txt文件。includedefineSSIZE20/maximumSIZEofstring,includingNUL/intmain(void){FILEfin;/定义一个文件指针*/inti;/定义存储数据的变量/floatf;charstring[SSIZE];fin=fopen("data.txt","r");/打开data.txt文件进行读取/fscanf(fin,"%d%f%s",&i,&f,string);/读取文件并将数据保存到变量/printf("%d%f%s\n",i,f,string);/将变量值打印到屏幕/fclose(fin);/正确关闭文件/return0;}评估任务设计、构建和测试您的程序,以将一笔抵押贷款交易的数据存储在一个结构中。每个结构应该是这样一个结构数组的一个元素。提示单行文本包含以下客户可以接受的要求:最短交易期限(年)最高初始利率(%)此后最高利率(%)最低贷款价值(%)最高产品费用(£)记得添加指令fflush(stdout);在你的printf()之后;迅速的。运行程序时,输入与客户的抵押贷款交易要求相对应的单行数据元素。在要求行中,最短交易期限、最低贷款价值和最高产品费用以整数值给出,但最大初始利率和此后的最高利率以带两位小数的浮点值给出。每个值都用空格与其他值隔开。示例需求行如下所示:2.504.50601000读入这样的一行后,您的程序应搜索结构数组,以查找并打印能够满足客户要求的合适的抵押贷款交易。如果满足客户要求的抵押贷款不止一项,最好按照初始利率递增的顺序打印。如果抵押贷款交易的初始利率相同,则按产品费用递增的顺序对交易进行排序。如果您无法管理排序,只需按照它们在数据库中的默认顺序打印它们。处理完一个需求行后,您的程序应该提示另一个和重复搜索和打印任务。出于任何原因,如果找不到与需求行匹配的交易,您的程序将简单地重复另一个需求行的提示。这个过程应该一直持续到输入一个字符“q”来终止你的程序。你的程序应该能够处理一个最多包含50个抵押贷款交易的数据库,但它应该被设计成可以通过编辑程序,然后重新编译它。对任务的观察在尝试解决方案之前,您应该仔细分析这个问题说明。在你的实验书中记录你的问题分析和设计过程。正确使用功能,以及在集成到完整程序之前单独测试每个功能,将有助于确保正确运行,并提供具有清晰模块化结构的可读和可维护程序。这种方法将使创建简化版本成为可能程序的早期阶段。在测试你的程序时,你应该通过设计测试输入并将程序的输出与预期的正确输出进行比较,来识别和测试程序中困难或敏感的部分。将您的测试过程也保存在您的实验室书籍中。您应该在整个代码中注释以解释关键指令的含义。希望你尽可能多地使用五节C语言课所教的知识,比如指针。提交如果你认为你的程序可以满足特定要求,你可以在你的项目文件夹的src文件夹中找到你的C程序文件,并将其重命名为sxxxxxxx.c(xxxxxxx是您的入学编号)。最后将其提交到Learn上的投递箱。请注意,在截止日期或之后提交是逾期提交,将收取逾期罚款。您可以在截止日期前重新提交程序的版本,而不会受到处罚。仅保留提交的最新版本编辑和评估。如已在截止日期前提交,不得以任何理由迟交。提交时间记录在收到的副本文件的计算机时间戳中。您可以选择在平台上开发您的程序,而不是在本实验课程中使用的IDE。在这种情况下,您必须在提交前检查您的程序的行为正如您在课程IDE上编译和执行时所期望的那样。除了检查源代码外,还将根据编译和执行来评估正确性。WX:codehelp