C语言程序设计报告
程序设计实训实验报告(热门20篇)

程序设计实训实验报告(热门20篇)c语言是在国内外广泛使用的一种计算机语言。
其语言功能丰富、表达能力强、使用灵活方便、既具有高级语言的优点,又具有低级语言的许多特点,适合编写系统软件。
其功能强大,不仅用在计算机上广泛用在电子,机械等方面上,而且,所有的windows,unix,linux,mac,os/2,无一例外,哪一个不是c 语言写的?很多新型的语言如,c++,java,c,j,perl...都是衍生自c语言。
掌握了c语言,可以说你就掌握了很多门语言。
学习c程序这门课一年了,这是我们学的第一门专业课,在大学里c语言不但是计算机专业的必修课程而且也是非计算机专业学习计算机基础的一门必修课程。
所以作为我这个计算机专业的学生来说当然十分重要,老师在第一节课说过,c语言是计算机的基础,大多数软件都需要用c语言来编写,通过一个年的学习,使我由初步掌握简单的应试知识到完成高难度的深入编程,如我们在编写一个较大的程序时应该把它分开成几个小程序来看,这样会容易得多。
同时,我觉得c语言应该是操作和理论相结合的课程,在不断地编写中去思考,两者是不可分割的。
在学习一年c语言的过程中我也在慢慢探索怎样才能学好c语言,并总结了一点经验:要了解c语言就要从语法规为基础来学习起,首先要是要了解它的结构,比如变量,首先要了解变量的定义方式(格式),其意义是什么(定义变量有什么用);其次就是要我要怎么去运用它(我要用什么型式去应用它)。
在c语言的命令行中所有的语句都是有它自己的一定格式和形式出现在我们面前,所以我们在学习某种语句或命令时你首先要了解的就是它的规则是什么、有什么用、怎么实现等。
这些都是语法基础也是c语言的基础如果把它们都了解很好了,那么你编起程序来就很得心应手了。
比如说ifelse和switchcase这两种条件语句都是用来判断执行功能的,那我要什么时侯用if什么时侯用switch呢?如果你很好地了解它们的结构和作用的话那么就知道:若它的条件分支是多个而且条件的值是整数或是一个字符值时就会选switch而不会选if。
C语言程序设计实验报告 实验一 简单程序设计

C语言程序设计实验报告实验一简单程序设计班级 2017231 学号 201723128 姓名郭鹏博一、实验目的1、熟悉VC6.0编程环境。
2、掌握使用VC6.0输入源程序、编译连接和运行程序的基本过程。
3、练习C调试程序的方法。
4、熟练使用赋值运算、算术运算等表达式。
5、熟练使用标准输入、输出函数及各种数据类型的格式说明符。
二、实验内容及步骤1、分析程序,根据要求写出结论:课本P83页第4题、第5题;第4题(1)c1=a,c2=bc1=97,c2=98原因:字符变量实质上是一个字节的整形变量,由于它常用来存储字符,所以称为字符变量。
可以把0到127之间的整数赋给一个字符变量。
在输出字符变量的值时,可以选择以十进制整数形式或字符形式输出。
(2)c1=?c2=?c1=-59,c2=-58原因:Visual C++系是把char默认为signed char类型的,而signed char类型的变量允许存储的值为—128~127,但字符的代码不可能为负值,所以在存储字符时实际上只用到0~127这一部分,其第1位都是0。
给字符型变量赋值197和198时,所赋之值超出了字符变量的取值范围,导致无论是以以十进制整数形式输出还是以字符形式输出,输出结果均错误。
(3)c1=a,c2=bc1=97,c2=98原因同(1)第5题2、程序改错下面程序的功能是计算球体的表面积和球体的体积,程序中有多处错误,并且指定必须按下面的形式输入、输出数据。
请对程序做相应的修改。
#include <stdio.h>main{double r,s,v;int pi=3.14;scanf("%d",r);S=4*pi*r*r; /*计算球体的表面积*/V=4.0*pi*r*r*r/3.0; /*计算球体的体积*/printf("%d",r);printf("s=%f\n",s,"v=%d\n",v);}当程序运行时,要求屏幕的显示和指定的输入形式如下:input r:2.0<回车> (此处的2.0是由用户输入的数据)r=2.000000 (此处要求的是输出形式)s=50.24000000,v=33.49333333具体要求:(1)在VC6.0环境中输入上述源程序。
C语言程序设计实验实验报告7

C语言程序设计实验实验报告7实验名称:链表实现学生信息管理系统实验目的:通过设计链表实现学生信息管理系统,掌握链表的操作方法及其应用。
实验内容:设计一个学生信息结构体,包括学号、姓名、性别、年龄和成绩五个成员变量,并选择链式结构存储这些数据。
实现以下功能:1. 添加学生信息:从键盘输入学号、姓名、性别、年龄和成绩等信息,添加到链表中。
2. 删除学生信息:从链表中删除指定学号的学生信息。
5. 按成绩排序:按学生的成绩从高到低排序,并输出所有学生的信息。
7. 退出程序:退出学生信息管理系统。
实验方法:1. 设计学生信息结构体,定义链表节点结构体,并编写初始化链表和销毁链表的函数。
2. 编写添加学生信息函数,新建链表节点并插入链表末尾。
3. 编写删除学生信息函数,根据学号查找需要删除的节点,先将该节点从链表中删除,再释放节点空间。
4. 编写修改学生信息函数,根据学号查找需要修改的节点,并修改其成员变量。
6. 编写按成绩排序函数,使用冒泡排序法对链表进行排序,并输出所有学生的信息。
7. 编写输出所有学生信息函数,遍历链表并输出每个节点的信息。
8. 完成学生信息管理系统的主函数,实现菜单及相应功能的选择。
实验结果:依次选择菜单中的各个功能,添加、修改、删除、查找、排序和输出学生信息都能实现。
经测试,程序稳定运行,功能正常,符合需求。
本次实验主要让我们掌握了链式结构的概念、链表节点的定义、链表的初始化、插入、查找、删除和销毁链表的操作方法,以及在实际应用中如何使用链表来实现数据管理。
虽然链表操作相对于数组稍微有些繁琐,但其可以灵活处理数据结构的长度变化,具有更高的可扩展性和更好的操作效率,可以更好的适应各种实际需求。
在实验中,还需要注意节点指针的正确使用、各个函数之间的调用关系和输入输出数据格式的合理选择等问题,以保证程序能够正常运行。
同时,还需要保持认真细致的态度,严格按照实验需求和要求来完成每个步骤,以达到更好的实验效果和运行效率。
C语言程序设计

C语言程序设计上机实验报告实验一一、实验名称: C程序的运行环境和运行C程序的方法二、实验目的:了解在C编译系统上如何编辑、编译、连接和运行一个C程序三、实验内容:(1). 输入并运行一个简单的C程序。
(2). 设计程序,对给定的两个数求和。
(3). 设计程序,对给定的两个数进行比较,然后输出其中较大的数。
四、源程序代码:代码1:#include<stdio.h>int main(){printf("hello world!\n");return 0;}运行结果1:程序分析1:代码2:#include<stdio.h> int main(){int a=5,b=6,c;c=a+b;printf("c=%d\n",c);return 0;}运行结果2:程序分析2:代码3:#include<stdio.h>int main(){int a=5,b=6,c;if(a>b){c=a;}else{c=b;}printf("%d\n",c);return 0;}运行结果3:程序分析3:五.实验总结C语言程序设计上机实验报告实验二一、实验名称:顺序结构程序设计二、实验目的:正确使用常用运算符(算术运算符、赋值运算符)的用法,熟练掌握算术运算符及其表达式,逻辑运算符和逻辑表达式。
三、实验内容:(1). 编写程序,实现小写字母转大写。
(2). 编写程序,实现输入两个不同类型数据后,经过适当的运算(加、减、乘、除)后输出。
(3). 编写程序,计算三角形面积、立方体的体积和表面积、圆的面积和周长。
(4). 编写程序,实现单字符getchar和putchar输入输出。
(5). 编写程序,实现十进制、八进制、十六进制不同数制的输出。
四、源程序代码代码1:#include<stdio.h>int main(){char c1,c2;c1=getchar();printf("%c,%d\n",c1,c1);c2=c1-32;printf("%c,%d\n",c2,c2);return 0;}运行结果1:程序分析1:代码2:#include<stdio.h>int main(){int a=5,c1,c2;double b=3.141592653,c3,c4;c1=a/b;c3=a/b;c2=a+b;c4=a+b;printf("%d,%d,%lf,%lf\n",c1,c2,c3,c4);return 0;}运行结果2:程序分析2:代码3:#include<stdio.h>int main(){here: printf("计算三角形的面积请输入‘1’,立方体的体积和表面积请输入‘2’,圆的面积和周长请输入‘3’.\n");int a;scanf("%d",&a);if(a==1){double l,h,s;printf("请输入三角形的底边长和所在底边的高.");scanf("%lf%lf",&l,&h);s=l*h/2;printf("三角形的面积为%.16f\n",s);}else if(a==2){printf("请输入立方体的长宽高.");double b,c,d,v,s;scanf("%lf%lf%lf",&b,&c,&d);v=b*c*d;s=b*c+b*d+c*d;printf("立方体的体积为%.16f,表面积为%.16f\n",v,s);}else{double r,s,c,m;printf("请输入圆的半径");scanf("%lf",&r);m=3.141592653;s=m*r*r;c=2*m*r;printf("圆的面积为%.16f,圆的周长为%.16f\n",s,c);}goto here;}运行结果3:程序分析3:代码4:#include<stdio.h> int main(){getchar();putchar('b');return 0;}运行结果4:程序分析4:代码5:#include<stdio.h>int main(){int a;printf("请输入任意十进制整数:");scanf("%d",&a);printf("转换为八进制数为:%o\n转化为十六进制数为:%x\n",a,a); return 0;}运行结果5:程序分析5:五、实验总结C语言程序设计上机实验报告实验三一、实验名称:选择结构程序设计二、实验目的:正确使用逻辑运算符和逻辑表达式,熟练掌握if 语句和switch 语句,学习调试程序。
C语言程序设计 实验报告1--顺序结构

福建农林大学金山学院实验报告系(教研室):专业:年级:实验课程: C语言程序设计姓名:学号:实验室号:_ 计算机号:实验时间:指导教师签字:成绩:实验1:顺序结构程序设计一、实验目的和要求1.了解Visual C++ 6.0/DEV_C++的基本操作方法2.掌握C程序设计的基本步骤:编辑、编译、连接和运行3.掌握各种类型数据的输入输出方法4.能够编写一个简单的程序二、实验内容和原理1. 输入并运行一个简单、正确的程序。
# include <stdio.h>int main( ){printf ("This is a c program!\n");return 0;}2. 要使下面程序的输出语句在屏幕上显示:A,B,34,则从键盘输入的数据格式应为AB34__________ 。
#include<stdio.h>int main(){char a, b;int c;scanf("%c%c%d",&a,&b,&c);printf("%c,%c,%d\n",a,b,c);return0;问题1:要使上面程序的键盘输入数据格式为a=A,b=B,34,输出语句在屏幕上显示的结果也为A,B,34,则应修改程序中的哪条语句?怎样修改?scanf( “a=%c,b=%c,%d”,&a,&b,&c );问题 2:要使上面程序的键盘输入数据格式为A,B,34,而输出语句在屏幕上显示的结果为“A”,“B”,34,则应修改程序中的哪两条语句?怎样修改?scanf( “%c,%c,%d”,&a,&b,&c);printf(“\”%c\”,\”%c\”,%d\n”,a,b,c);3、编程求一个圆的周长和面积。
用scanf输入圆半径,输出保留两位小数。
4、输入一个华氏温度F,要求输出摄氏温度C。
c语言程序设计_实验一实验报告

实验项目名称:实验一C 语言的运行环境的使用实验目的及要求:1. 了解 Windows 系统下 C 语言的运行环境,熟悉 C 程序编辑、调试、运行的基本操作方法。
2. 熟练掌握编辑、编译、连接和运行 C 程序的方法。
3. 通过运行简单的 C 程序,初步了解 C 源程序的特点。
4. 初步理解 C 语言的数据类型,了解变量定义、变量赋值以及简单运算方法,了解程序运行结果的基本输出方法。
实验内容(方法和步骤):1、编程实现在屏幕上显示如下三行文字Hello, world !Wolcome to the C language world!Everyone has been waiting for程序代码:#include <stdio.h>int main(){printf("Hello,World!\n");printf("Welcome to the C language world!\n");printf(Everyone has been waiting for.\n");return 0;}运行结果:2、编写程序,将两个整数相加,并输出结果。
程序代码:#include <stdio.h>int main(){int a,b,c;a=12;b=26;c=a+b;printf("c=%d\n",c);return 0";}运行结果:3. 编写程序,要求从键盘输入2 个整数,输出其中较大的数程序代码:#include <stdio.h>int main(){int max(int x,int y);int a,b,c;scanf("%d,%d",&a,&b);c=max(a,b);pintf("max=%d",c);return 0;}int max(int x,int y){ int z;if (x>y) z=x;else z=y;return(z);}运行结果:4.输入并运行下程序,观察运行结果。
周信东主编版C语言程序设计基础实验一实验报告

周信东主编版C语言程序设计基础实验一实验报告实验报告:C语言程序设计基础实验一一、实验目的本实验的主要目的是让学生熟悉C语言的基本语法和数据类型,培养运用C语言进行编程的能力。
通过实验,学生将深入理解C语言的程序结构、变量的定义和赋值、数据类型的转换、运算符的使用等基本知识点,并能够独立编写简单的C程序。
二、实验内容本实验主要包括以下三个部分:1.简单的输入与输出程序:要求用户输入姓名和年龄,然后输出用户的个人信息。
2.简单的数值运算程序:用户输入两个整数,程序计算并输出这两个整数的和。
3.三个整数排序程序:用户输入三个整数,程序对这三个整数进行排序,并输出结果。
三、实验过程与结果1.简单的输入与输出程序:实验过程:首先,我们使用`scanf(`函数从用户输入中获取姓名和年龄,然后使用`printf(`函数输出用户的个人信息。
实验结果:例如,用户输入姓名为“张三”,年龄为18,则程序输出“姓名:张三,年龄:18”。
2.简单的数值运算程序:实验过程:首先,我们使用`scanf(`函数从用户输入中获取两个整数,然后使用`+`运算符将这两个整数相加,并将结果保存在一个变量中。
最后,使用`printf(`函数输出这两个整数的和。
实验结果:例如,用户输入整数1和整数2分别为3和5,则程序输出“整数1+整数2的和:8”。
3.三个整数排序程序:实验过程:首先,我们使用`scanf(`函数从用户输入中获取三个整数,然后使用条件语句和循环语句对这三个整数进行排序。
最后,使用`printf(`函数输出排序后的结果。
实验结果:例如,用户输入的三个整数为2、1和3,则程序输出“排序后的结果为:1、2、3”。
四、实验总结通过本实验,我进一步熟悉了C语言的基本语法和数据类型,并通过实际编写程序来加深对这些知识的理解。
在实验过程中,我遇到了一些问题,例如如何正确使用`scanf(`函数从用户输入中获取数据,如何使用条件语句和循环语句对数据进行处理等。
《C语言程序设计》实验报告实验六

《C语言程序设计》实验报告实验六使用指针的程序设计学号姓名一、实验目的1、掌握指针的概念,会定义和使用指针变量;2、能正确使用数组的指针和指向数组的指针变量;3、熟悉指针作为函数参数的定义和调用方法;4、能正确使用字符串的指针和指向字符串的指针变量。
二、实验内容1.分析下面的程序并上机运行程序,要求写出3组以上程序的运行结果。
#include <stdio.h>void main(){int *p1,*p2,*p;int a,b;printf("Input a b please");scanf("%d%d",&a,&b);p1=&a;p2=&b;if(a>b){ p=p1;p1=p2;p2=p;}printf("*p1=%d, *p2=%d\n",*p1,*p2);printf("a=%d, b=%d\n",a,b);}『运行结果:』输入1,2得:*p1=1,*p2=2a=1,b=2输入2,1得:*p1=1,*p2=2a=2,b=1输入56,123得:*p1=56,*p2=123a=56,b=1232.下列程序的功能是分别求出数组中所有奇数之和以及所有偶数之和。
形参n给了数组中数据的个数,利用指针odd返回奇数之和,利用指针even 返回偶数之和。
请在下面空白处将实现这一功能的函数完善,并且调试运行出结果。
#include <stdio.h>#define N 10void fun(int *a,int n,int *odd,int *even){int m;*odd=0; *even=0;for(m=0;m<n;m++)if(*(a+m)%2==0)*even+=*(a+m);else*odd+=*(a+m);}void main(){int a[N]={1,10,2,3,19,6},i,n=6,odd,even;printf("The original data is:\n");for(i=0;i<n;i++)printf("%5d",*(a+i));printf("\n\n");fun(a,n,&odd,&even);printf("The sum of odd numbers:%d\n",odd);printf("The sum of even number:%d\n",even);}『运行结果:』3.编程实现从键盘输入一个字符ch和一个字符串str,利用字符指针实现删除字符串str中和字符ch相等所有字符,然后输出字符串str。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
课程设计报告课程名称C语言程序设计课题名称销售管理系统专业机械设计制造及其自动化班级学号姓名指导教师2009年5月5日课程设计任务书课程名称 C程序设计课题销售管理系统专业班级机械设计制造及其自动化0805班学生姓名学号指导老师审批任务书下达日期2009年4月27 日任务完成日期2009年5月5日目录一.课程设计任务书 (4)二.销售管理系统(1)程序的主要功能 (7)(2)程序的模块组成 (7)(3)各函数的功能 (7)(4)函数的功能模块简图 (8)(5)程序的操作流程简图 (9)(6)函数的主要流程图 (10)(7)程序的运行及调试 (11)三.总结 (14)四.附件 (16)五.机械工程系课程设计评分表 (26)一、课程设计任务书1、设计内容与设计要求○1、设计内容●问题描述:通过本系统实现对N个销售员信息的录入、显示、添加、删除,以及对产品销售额的排序等操作的管理。
●功能描述:本系统采用一个包含n个数据的结构体数组,每个数据的结构应当包括:姓名、身份、产品1销售额、产品2销售额、总产品销售额。
本系统显示这样的菜单:销售管理系统1、销售员信息输入2、销售员信息输出3、删除销售员4、添加销售员5、销售额排序6、统计产品销售额7、保存销售额信息0、退出系统执行一个具体的功能之后,程序将重新显示菜单。
将系统信息保存在文件中。
●算法提示:数据结构:结构体类型数组数据库结构:下表构成该系统的基本数据库姓名身份产品1销售额产品1销售额总产品销售额c h a r i n t i n t i n t i n t●测试数据:记录数20(5).分组及安排所选题目根据学生学号确定,学号模4加1,即(学号%4+1)。
如你的学号为17,则所选题目号为:17%4+1==(题目2)。
(6).成绩评定程序设计方案是否合理;程序设计是否正确;调试结果;设计说明书的质量高低;答辩时回答问题情况;课程设计周表现情况;总评成绩记入“课程设计成绩评分表”。
○2、设计要求:1).设计正确,方案合理。
2).界面友好,使用方便。
3).程序精炼,结构清晰。
4).设计报告5000字以上,含程序设计说明,用户使用说明,源程序清单及程序框图。
5).上机演示。
2、进度安排星期一晚上机房上机,熟悉这次课程设计的目的和课程设计的要求,通过图书馆或因特网查找与销售管理系统课题相关的资料,明确了解一些要用到的文件和调用函数等,然后再把整个程序设计的总体框架、流程图等构思出来,并进行书面程序设计。
星期二下午机房上机,在计算机上编辑源程序。
调试程序,在改正错误的同时不断完善程序,使源代码满足课程设计的要求和实现课程设计的基本功能。
不断改正错误后,要保证程序能成功编译成目标文件,链接成功成为可执行文件,这样才能算已经完成了本课题的基本功能。
之后,开始撰写课程设计报告。
星期三上午进一步完善程序并运行演示,完成课程设计答辩,完成并打印课程设计报告。
课程设计报告装订顺序:封面、任务书、目录、正文、评分(A4大小的图纸及程序清单)。
正文的格式:一级标题用3号黑体,二级标题用四号宋体加粗,正文用小四号宋体;行距为22。
正文的内容:一、课题的主要功能;二、课题的功能模块的划分(要求画出模块图);三、主要功能的实现(至少要有一个主要模块的流程图);四、程序调试;五、总结;六、附件(所有程序的源代码,要求对程序写出必要的注释)。
正文总字数要求在5000字以上(不含程序源代码)。
二、销售管理系统★程序的主要功能★该程序除了主函数外,还有另外七个函数,能够输入和输出销售员的信息,方便存储销售员的信息,能够及时地添加或删除销售员的信息并保存修改信息以及对产品销售额、销售总额的排序,使使用者对销售员的信息一目了然。
★程序的模块组成★1、主函数m a i n();2、输入函数i n p u t();3、输出函数o u t p u t();4、添加函数a d d();5、删除函数d e l e t e();6、排序函数p a i_x u()7、统计函数t o n g_j i()8、保存函数s a v e();★各函数的功能★主函数调用其它函数输入函数输入销售员的信息输出函数输出销售员的信息添加函数添加销售员的信息删除函数删除销售员的信息排序函数对产品的销售额进行排序统计函数统计产品的销售额保存函数保存信息★函数的功能模块简图★Main()tong_jiadd() Output()Delete() input()save()Pai_xu()★程序的操作流程简图★开始主菜单1 输入销售员的信息7保销售额信息6统计产品销售额5产品销售额排序4添加销售员的信息3删除销售员的信息2输出销售员的信息退出系统★函数的主要流程图★输入记录函数SAILER Input1()这是一个无参函数,用来执行销售员的信息的录入的,当销售眼的身份是0时停止输入N-S流程图如下:i=1i<=ni++i-1==0是不是break P[i-1]=Input()输出函数这也是一个无返回值得函数,它只中定义了一个数组。
用于记录一个销售员的信息。
N-S流程图如下:i=1i<=ni++p-1>id=0是不是break Output(p++)★程序的运行及调试★○1程序运行时,进入主菜单,显示:○2调试输入函数输入1,回车,并出现语句“请输入1号销售员的信息”,输入20个销售员的信息,回车,并返回主菜单:○3调试输出函数输入2,回车,返回主菜单并显示:○4调试删除函数输入3,回车,出现语句“请输入要删除的位置”,输入销售员的序号(假设1号),回车,返回主菜单并显示:○5调试添加函数输入4,回车,显示:○6调试排序函数输入5,回车,显示:○7调试统计函数输入6,回车,返回主菜单并显示:○8调试保存函数输入7,回车,返回主菜单并显示:○9调试退出函数三、总结当今世界的科学技术正在迅猛的发展,而C语言以其巨大的功能而被广泛运用。
因此掌握C语言的运用是作为一个大学生所必须的。
而C语言课程设计给我们提供了一个很好的机会,让我们对C语言有了更进一步的了解,在上机操作的的过程中加强了我们思考与动手能力。
拿到自己的课题,开始不知道从那里下手。
于是在我仔细审读了我自己的课题之后,就开始翻阅资料,同时也在网上搜集了许多有用的资料,为自己的课题做准备。
在一周的课程设计中,每天都忙着查阅资料,但可以说是“苦并快乐着”。
在这期间,我不仅巩固了以前所学的知识,学到了新的知识,而且也体会到了团结协作的重要性。
在遇到不明白的问题时,和同学们一起查资料一起讨论,虽然不是同一个课题,但也能彼此指出错误,彼此借鉴,然后修改完善自己的课题,我觉得这才是难能可贵的。
还有,老师的指导也是不可或缺的。
老师的经验丰富,在我们几经讨论还得不出结果的情况下向老师请教,他一眼就可以看出我们存在的错误,并帮助我们纠正错误,让我们更有信心来完成此次的课程设计。
C语言课程设计不仅仅只是一次练习,它让我认识到理论与实际永远是存在差距的,学完了课本知识并不意味着对C语言有了很大的了解,也并不意味着就能编好一个程序。
在实际的操作中我遇到了许多问题。
比如说,函数的定义和调用、结构体的定义、f o r语句、文件的打开等等,通过此次的课程设计,我对这些知识的理解更细微更深刻了,并认识到思考创新与实践的重要性。
这正验证了一句话“实践是检验真理的唯一标准”。
写完一个程序,要进行反复地调试,进行创新性地修改,是程序的功能更加合理,更加完善。
这也是考验一个人的细心和耐心的时候,因为有时候会出现几十甚至上百个错误,这就要我们仔细耐心地去寻找错误,只有坚持下来,才能完成一个完整的程序。
可谓是“山重水复疑无路,柳暗花明又一村”,只有不畏惧眼前的困难,勇往直前,才能达到胜利的彼岸。
要完成一个程序实在不容易,我从中体会到了许多的东西。
一个程序的完成,一个软件的开发需要花费巨大的脑力和物力,现在的竞争如此的激烈,“狭路相逢勇者胜”,只有具备过硬的知识与技能,有足够的耐心和细心,敢于创新,才能在激烈的竞争中脱颖而出,成为其中的佼佼者。
同时我也懂得了学好计算机是非常重要的,但是,不能拘于书本上的知识,而是要通过实践来强化我们所学的知识,通过上机操作来检验我们的知识,查缺补漏,加强自己的动手能力和思维能力,这才是当代大学生所必须具备的。
一周的课程设计很快就过去了,反复看着自己的劳动成果不免有些欣喜,有苦有累,有时候会想到要放弃,但还是坚持过来了,因为不只有我一个人这样。
老师的细心指导,同学的团结协作,自己的创新思考,终于完成了一个程序的设计和实验报告的填写,更重要的是从中学到了许多可贵的东西。
所以,在以后的学习生活中,不仅仅是学习计算机,在其它方面我都将更注重实践,使自己能更好的消化所学的知识。
四、附件销售管理系统的源代码#include<stdio.h>#include<process.h>#include<string.h>#include<conio.h>int n=20; /*记录销售员信息条数*//*销售员*/typedef struct sailer{char name[10]; /*名字*/int id; /*身份*/int no1; /*产品1的销售额*/int no2/*产品2的销售额*/;int all; /*总产品销售额*/}SAILER;SAILER s[30];/*清屏并显示题目*/void page_title(char *menu_item){printf("\n\n\t\t******** 销售管理系统********\n\n \t\t\t\t%s\n\n",menu_item);}/*输入销售员的信息*/SAILER Input1(){SAILER a;printf("Name:\t");scanf("%s",);printf("ID:\t");scanf("%d",&a.id);printf("产品1的销售额\n");scanf("%d",&a.no1);printf("产品2的销售额\n");scanf("%d",&a.no2);a.all=a.no1+a.no2;return a;}void input(SAILER *p,int n){int i;for(i=1;i<=n;i++){printf("请输入%d号销售员的信息:\n",i);p[i-1]=Input1();if(p[i-1].id==0)break;}}/*输出销售员的信息*/Output1(SAILER *p){printf(" %-10s",p->name );printf(" %3d",p->id );printf(" %3d",p->no1 );printf(" %3d",p->no2 );printf(" %3d",p->all );printf("\n\n");}void output(SAILER *p,int n){int i;for(i=0;i<n;i++){if(p->id!=0)Output1(p++);}}/*添加销售员*/void add(){int k;SAILER new;new=Input1();printf("请输入要添加的位置: ");scanf("%d",&k);printf("\n\n添加成功!\n\n");output(s,n);}Add1(SAILER *p,int *n,SAILER x,int k){int i;for(i=*n-1;i>=k-1;i--)p[i+1]=p[i];p[k-1]=x;(*n)++;}/*删除销售员*/Delete1(SAILER *p,int *n, int k){int i;for(i=k;i<(*n);i++)p[i-1]=p[i];(*n)--;}void delete(){int k;printf("请输入要删除的位置: ");scanf("%d",&k);Delete1(s,&n,k);printf("\n\n删除成功!\n\n");output(s,n);}/*按产品一销售额排序*/void save1(){int v;FILE *fp1;if((fp1=fopen("c:\\sailer1.txt","wb"))==NULL){printf("cannot open file\n\n");return;}for(v=0;v<n;v++)if(fwrite(&s[v],sizeof(struct sailer),1,fp1)!=1) printf("file write wrong!!\n\n");fclose(fp1);}void pai_xu1(){SAILER e;int i,j;for(j=0;j<n-1;j++)for(i=0;i<n-j-1;i++)if(s[i].no1>s[i+1].no1){e=s[i];s[i]=s[i+1];s[i+1]=e;}save1();printf("\n\n排序成功!\n\n信息保存于c:\\sailer1.txtzhong"); }/*按产品二销售额排序*/void save2(){int v;FILE *fp2;if((fp2=fopen("c:\\sailer2.txt","wb"))==NULL){printf("cannot open file\n\n");return;}for(v=0;v<n;v++)if(fwrite(&s[v],sizeof(struct sailer),1,fp2)!=1)printf("file write wrong!!\n\n");fclose(fp2);}void pai_xu2(){SAILER e;int i,j;for(j=0;j<n-1;j++)for(i=0;i<n-j-1;i++)if(s[i].no2>s[i+1].no2){e=s[i];s[i]=s[i+1];s[i+1]=e;}save2();printf("\n\n排序成功!\n\n信息保存于c:\\sailer2.txt zhong"); }/*按产品总销售额排序*/void save3(){int v;FILE *fp3;if((fp3=fopen("c:\\sailer3.txt","wb"))==NULL){printf("cannot open file\n\n");return;}for(v=0;v<n;v++)if(fwrite(&s[v],sizeof(struct sailer),1,fp3)!=1)printf("file write wrong!!\n\n");fclose(fp3);}void pai_xu3(){SAILER e;int i,j;for(j=0;j<n-1;j++)for(i=0;i<n-j-1;i++)if(s[i].all>s[i+1].all){e=s[i];s[i]=s[i+1];s[i+1]=e;}save3();printf("\n\n排序成功!\n\n信息保存于c:\\sailer3.txt zhong"); }/*排序菜单*/void menu1(){int t;printf("\n\n\t\t*********pai xu cai dan*********\n\n");printf("\n\t\t1. 产品1的销售额排序\n");printf("\n\t\t2. 产品2的销售额排序\n");printf("\n\t\t3. 总产品销售额排序\n");printf("请选择!(0~3)");scanf("%d",&t);switch(t){case 1: pai_xu1();break;case 2: pai_xu2();break;case 3: pai_xu3();break;default :{printf("\n\n错误!请重新选择!");}}}/*按产品销售额统计*/void tong_ji(){int i,sum1,sum2,sum;sum1=0;sum2=0;sum=0;for(i=0;i<n;i++){sum1+=s[i].no1;sum2+=s[i].no2;sum=sum1+sum2;}printf("产品一的销售额: %d\n",sum1);printf("产品二的销售额: %d\n",sum2);printf("产品的总销售额: %d\n",sum);}/*保存模块*/void save(){int v;FILE *fp;if((fp=fopen("c:\\sailer.txt","wb"))==NULL) {printf("cannot open file\n\n");return;}for(v=0;v<=2;v++)if(fwrite(&s[v],sizeof(struct sailer),1,fp)!=1)printf("file write wrong!!\n\n");fclose(fp);printf("\n\n保存成功!\n\n信息保存于c:\\sailer.txt zhong"); }/*菜单函数*/menu(){int choice;menu: page_title("--menu--\n");printf("\n\t\t 1. 输入销售员的信息\n");printf("\n\t\t 2. 输出销售员的信息\n");printf("\n\t\t 3. 删除销售员\n");printf("\n\t\t 4. 添加销售员\n");printf("\n\t\t 5. 销售额排序\n");printf("\n\t\t 6. 统计产品销售额\n");printf("\n\t\t 7. 保存销售额信息\n");printf("\n\t\t 0. 退出系统\n\n\n");printf("\n\t\t请输入选项(0~7)");scanf("%d",&choice);switch(choice){case 1:input(s,n);break;case 2:output(s,n);break;case 3:delete();break;case 4:add();break;case 5:menu1();break;case 6:tong_ji();break;case 7:save();break;case 0:exit(0);}if(choice<0||choice>7)printf("\n\n\n\t\t请重新选择!\n\n");goto menu;}/*欢迎界面(图形模式)*/welcome(){printf("欢迎进入销售管理系统! ");}/*主函数*/main(){welcome();menu();}机械工程系课程设计评分表课题名称:销售管理系统项目评价设计方案的合理性与创造性设计与调试结果设计说明书的质量答辩陈述与回答问题情况课程设计周表现情况综合成绩教师签名:日期:(注:1.此页附在课程设计报告最后一页;2.综合成绩按优、良、中、及格和不及格五级评定。