C语言实践报告.doc

上传人:scccc 文档编号:12392025 上传时间:2021-12-03 格式:DOC 页数:7 大小:56KB
返回 下载 相关 举报
C语言实践报告.doc_第1页
第1页 / 共7页
C语言实践报告.doc_第2页
第2页 / 共7页
C语言实践报告.doc_第3页
第3页 / 共7页
亲,该文档总共7页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《C语言实践报告.doc》由会员分享,可在线阅读,更多相关《C语言实践报告.doc(7页珍藏版)》请在三一文库上搜索。

1、中南大学本科生课程设计(实践)报告(C语言)题 目全国各省会城市天气情况统计指导教师 学 院专业班级学生学号学生姓名 计算机基础教学实验中心2007 年 9 月 10 日目录1.1课程设计内容概述: .11.2设计方案及实现过程: .22.1方法技巧及所遇到的问题: .52.2实践的心得与体会: 61.1 课程设计内容概述:实践背景知识:计算机技术的发展和广泛应用, 正深刻地改变着现有的社会生产方式和生活 方式,成为信息社会的重要支柱。 信息化社会对人才的培养提出了更高的要求和 标准。掌握和了解计算机技术并具有应用计算机的能力是适应信息化社会的基 础。C 语言是近年来在国内外得到迅速推广应用的

2、一种计算机语言。其功能丰 富,表达能力强,使用灵活方便,应用面广,目标程序效率高,可移植性好,既 具有高级语言的优点,又具有低级语言的许多特点。因此, C 语言特别适合于编 写系统软件。现在,C语言已不仅为计算机专业工作者所使用, 而且为广大计算机爱好者 所青睐,许多人已经用它编写应用软件。如今,学习 C 语言已成为众多计算机 应用人员和青年学生的迫切要求。上网查询各省会城市某日最高、最低气温和湿度,将数据(城市名称、最高气温、最低气温、 湿度)以统一格式保存在一个纯文本文件 A.TXT 中。编程实现:a. 从文件A.TXT中读取数据,计算全国省会当日的最高气温、湿度的平均值, 统计最高气温高

3、于平均值的城市数;b. 按湿度升序排序,将排序后的数据存入文件 B.TXT中;c. 计算各城市温差,计算自己所在省的省会城市温差在各省会城市中的排 名;d. 统计最高气温在10C以下、1OCs 20C、2OCs 30C、30C以上的城市 数,并绘制分布饼图和折线图。1. 要求:A. 利用子程序,分模块实现;B. 所有数据采用文件形式保存;C. 数据的组织可采用数组,也可用结构体数组。通过对书本知识的自学和理解,掌握用 C 语言编写实用程序和设计自定义 用户界面的基本方法,培养利用程序设计技术进行计算机与专业知识的交叉应 用,增强综合解决实际问题的能力, 掌握多模块结构的程序设计与调试方法以及

4、程序模块间的数据传递方法,建立提出问题、分析问题、解决问题的思维方式, 提高自身计算机水平,促进灵活运用所学知识解决问题能力的提高。1.2 设计方案及实现过程:1. 将上网查询的数据保存在纯文本文档里, 所编写的程序包括一个主函数和 四个子函数,主函数主要是定义由文件中各类数据组成的结构体和供运行者选择 的分支结构。2. 第一个自定义函数功能为:调用特定的库函数从文件中读取数据,此处应 注意已保存文本的格式和函数中定义的数据类型, 再采用循环结构将最高温度和 湿度值累加求平均值, 最高气温高于平均值的城市数目也可通过循环结构计算出 来。3. 第二个自定义函数功能为:将文件中各个城市的湿度值读出

5、来,采用选择 排序或者冒泡排序法将所有数值从小到大排列, 再调用 fprintf 函数,把排列好的 数据存入指定名称的文本文档中。4. 第三个自定义函数功能为: 利用循环结构把各城市最高温与最低温相减, 将所得差值定义为一个数组, 并显示在屏幕上, 然后从第一个城市开始, 和长沙 市的温差比较,将大于长沙市的城市数目累加,即得出本市的具体排名。5. 第四个自定义函数功能为:先将各城市的最高气温除十以方便计算,再 采用 switch 语句,通过循环结构读出各温度段的城市数目并累加,把所得结果 用饼状图和折线图显示在屏幕上。:开始输入choice1、定义文件名、文件指针、结构体数组和需要用到的自定

6、义函数,为方便编程 过程中的修改,将城市数目定义为宏。#i nclude <stdio.h>#in elude <coni o.h> #in clude <stdlib.h>#defi ne N 34 struct cchar n ame15;int high;int low;int wed;cityN;FILE *fp;void f1();void f2();void f3();void f4();2、编写主函数,利用输出函数输出一些中文提示语句以方便运行时选择。为使运行时界面清晰,还可以用几行*和符号隔开。mai n()int choice;while(

7、1) printf("n 请选择需要的操作 n");printf("1. 从文件 A.TXT 中读取数据,计算最高温和湿度的平均值,统计最高温高于 平均值的城市数 n");printf("2. 按湿度升序排序,将排序后的数据存入文件 B.TXT 中 n");printf("3. 计算各城市温差,计算自己所在省的省会城市温差在各省会城市中的排名 n");printf("4.统计最高气温在10C以下、1OCs 20 C、2OCs 30 c、30C以上的城市数,并绘制分布饼图和折线图 n");prin

8、tf("5. 请按 0 退出 n");printf(*");scanf("%d",&choice);if(choice>=0&&choice<=4) switch(choice) case 1: f1();break;case 2: f2();break;case 3: f3();break;case 4: f4();break; case 0: exit(1);printf(H*");printf("n 已经完成指定操作,您可以再次选择 !n"); elseprintf(&qu

9、ot;* *");printf("n 您的选择无效,请重新选择 !n"); 3、按照任务书上的要求分模块实现,共需要编写四个子程序。现将第一个子函数作为例子显示如下:void f1()FILE *fp;int i,hsum=0,num=0,wsum=0,waver,haver;if(fp=fopen("A.txt","r")=NULL) printf("n 不能打开城市温度管理文件! ");exit(1);printf(" 城市名称 最高温度 湿度 n");for (i=0;i<

10、N;i+)fscanf(fp,"%12s%8d%*8d%8dn",cityi.name,&cityi.high,&cityi.wed); printf("%12s%8d%8d%n",cityi.name,cityi.high,cityi.wed); hsum=hsum+cityi.high;wsum=wsum+cityi.wed; fclose(fp);haver=hsum/N; waver=wsum/N;for(i=0;i<N;i+)if(haver<cityi.high)num=num+1;printf("n 最

11、高温度平均值为 :%dn",haver);printf(" 湿度平均值为 :%d%n",waver);printf(" 高于最高温度平均值的城市数为 :%dnn",num);getch();2.1 方法技巧及所遇到的问题:一个目标的完成, 一个期望的实现, 是一个不断探索与实践的过程, 不仅需 要执着,还需要科学的方法,奇特的构思,才能使目标预期实现。基于此,在 C 语言实践的过程中, 我正是采用了科学的方法, 才得以完成, 而一定的技巧又成 为此次任务完成的助推器,通过实践,可以总结出一些方法,归结为四个“能” :1、“能”独立思考。自身的探

12、索、创新,往往是做事成功的一半。而独立思 考,就为个性发挥,编写合理简洁的程序奠定了基础。2、“能”学习理论知识。一定的行动总是在科学的指导下得以完成。只有了 解 C 语言相关基础知识,才能设计自如。3、“能”亲自实践。正所谓“实践出真知” ,知识、想法只有在实践中得以 证明。因而,应当充分利用时间,不断上机操作,巩固和强化所学知识。4、“能”沟通交流。在实践中,自己所不能解决的问题,可以和同学交流或 向老师请教。1、由于条件限制,上机时间不是很充足,针对这一问题,应该学会充分利 用学校给我们提供的设备及计算机开放的时间,增加上机操作的次数,不断熟 练,“温故而知新”。2、在操作中遇到技术问题

13、,不太清楚,可以通过看教材,多与同学交流, 或者向老师请教,最终理解并学会运用这一内容。3、由于时间观念不强, 造成程序的已完成部分没能及时保存好, 不得不重 新来过,导致效率低下。4、编写整个程序框架时,方案设计有一定难度,需要自己动脑筋,不断尝 试,这样才能找到最合适的方案,与此同时,要求我们熟练C 语言编程的相关知识。5、在实践中,经常忽略一些看似不重要的东西,导致做的时候,总是在细 节上出错误,例如:程序写入过程中会犯一些简单的语法错误,像自定义标志 符、输入和读取文件时的数据类型说明等。6、不熟悉操作,对那些不常用的知识意识模糊。如空函数的定义、数组和 针的运用。之后,通过看书和与同

14、学交流,学会了这些内容的运用,扩展了 C 语言知识。当然,问题无止境, 提高也无止境, 对计算机一些更深层次的知识还有待 进一步去探索,学习更高难度的操作,例如,编写一个简单的软件,展示自己 的综合水平。2.2 实践的心得与体会:可以说,这次 C 语言实践,实质上是对我们学习知识能力的综合考验。一 次复杂程序的编写,包括了很多细小的部分,每部分又都需要用心去认真完成, 相当于采集很多原料, 通过加工而成的一件精致的工艺品。 同时,只有不断探索、 学习,才能提升自己的能力。当然,知识只有在实践中才能发挥价值。因而,这 次 C 语言实践,让我对编程的相关知识有了更深的了解。同时,也让我明白了 一个道理“细节决定成败”,一些细微的东西, 对整个大局也有举足轻重的作用,万不可忽视,只有不断操作,才能不断提升。可以说,这次实践是对 C 语 言知识的升华与拓展。 正因为此, 在实践中难免会遇到一些困难, 好在都能及时 解决。其次,这次实践也增强了我的动手能力, 独立思考能力及创新意识, 同时, 同学们互相学习,彼此交流,一起动脑筋研究,都很好地完成了任务。“一份耕耘,一份收获” ,此次实践不仅使我对 C 语言编程的理论知识有 了进一步了解,锻炼了操作能力、思考能力、创新能力,同时也为今后的学习生 活奠定了坚实的基础,可谓获益匪浅!

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1