当前位置:文档之家› c语言交通处罚单管理系统(含实验报告和源代码)

c语言交通处罚单管理系统(含实验报告和源代码)

c语言交通处罚单管理系统(含实验报告和源代码)
c语言交通处罚单管理系统(含实验报告和源代码)

C语言程序设计

课程设计材料

学生姓名:王嘉廉学号:11562255123 系 (院):信息工程学院

专业:信息管理与信息系统

设计(论文)题目: 交通处罚单管理系统

完成日期: 2012年9月

指导教师: xx!

二○一二年九月

●课程设计目的 (3)

●课程设计内容 (3)

●总体设计 (3)

●详细设计 (4)

●运行结果 (8)

●程序调试 (10)

●编程体会 (11)

一、课程设计目的

1.通过课程设计,加深对结构化程序设计思想的理解,能对系统功能进行分析,并设

计合理的模块化结构。

2.通过课程设计,进一步掌握C有并重要的数据结构。掌握并熟练运用指针、链表、

结构体、文件等数据结构。

3.通过课程设计,提高程序开发能力,能运用合理的控制流编写清晰高效的程序。

4.通过课程设计,培养C语言知识运用和自学能力,真正的把课堂上获得的知识运用

起来,培养自己对程序编写的兴趣,并能独立设计和实现一个中小型系统。

5.通过课程设计,加强了自己的程序分析能力。

6.通过课程设计,完成了交通处罚单管理系统,很多功能还待完善。

二、课程设计内容

用C语言编写软件完成以下任务:

1交通处罚单基本信息输入(数据包括处罚单号码,车牌号码,姓名,开单警察的信息ID,处罚时间等),信息保存在data.txt文件中,

2交通处罚单基本信息浏览。将文件内所有的交通处罚单信息全部输出展现出来。

3交通处罚单基本信息查询。可以查询特定的交通处罚单信息。

4交通处罚单基本信息统计。可以查询某一个时间段的所有的交通处罚单信息。

5 交通处罚单基本信息删除。删除不需要的交通处罚单信息。

三、总体设计

本系统的功能模块如图1所示,主要有以下模块:

(1)交通处罚单基本信息输入:构造函数void shurujianli()),对产生新的交通处罚单的信息进行输入。

(2)交通处罚单基本信息浏览:构造函数void liulan(),全部浏览已被录入交通处罚单的所有信息。

(3)交通处罚单基本信息查询:构造函数void chaxun(),输入想要查询的方式,用三种方式查询交通处罚单基本信息。

(4)交通处罚单基本信息统计:构造函数void tongji(),对文件中所有的交通处罚单进行精确统计。

(5)交通处罚单基本信息删除:构造函数void shanchu(),通过输入书名,判断此交通处罚单是否存在,若存在,则删除该交通处罚单所有信息,然后再把剩下的交通处罚单信息保存到文件。

系统功能模块图

图一

四、详细设计

结构体定义如下:

#define N 500

struct chufadan

{

int num; /*处罚单号码*/

int chepai; /*车牌号码*/

char name[10]; /*驾驶员名字*/

int id; /*开单警察的信息ID*/

int year;

int month;

int day; /*处罚时间为年月日排列*/

}chufadan[N]; /*dan[500]中每个数组元素对应一个处罚单信息*/

(一)信息输入函数:

图2 信息录入功能流程图(三)信息删除函数:

图3 信息删除功能流程图

图4 信息查询功能流程图(四)统计功能函数:

图5 信息统计功能流程图

图6 信息浏览功能流程图五、运行结果

主菜单界面

图7

输入建立模块

图8 查询模块

图9

浏览模块

图10

统计模块

图11

删除模块

图12

六、程序调试

自从把整体的c语言处罚单管理系统编成以后,就开始进行调试。调试的过程中不知道修改了多少次源代码,为了能让交通处罚单管理系统在输入任何代码的情况下都能正常使用,不会出错,反复的修改,看书,查资料,询问同学调试之后,终于运行成功。主要克服了以下问题:

(1)怎么样把交通处罚单数据输入文件中。

(2)通过主函数把其他的函数连接起来,形成一个完整的有序的程序。

(3)难度最大的是统计模块,算法十分复杂。

七、编程体会

老师布置完程序设计任务的第二天,我就开始寻找题目准备入手,见到交通处罚单管理系统这个课题以后,我对此很感兴趣。于是,当天下午开始做准备工作,重新把c语言复习一遍,开始编程。起初是挺困难的,偌大的一个程序,我之前从未编过,无从下手,然后,我通过查资料,了解其大概模型,首先是把管理系统所含有的功能各自分成几个模块,建立一个主函数,把主函数和其他数个函数连接起来。我想好了做输入、查询、浏览、删除、统计这五个功能,先把主函数完成,另外设计一个主界面。一开始真的困难重重,虽然c语言复习过了,但是看书看懂了和真正的运用学到的知识写程序是完全不同的,不断的对照例题,不断的尝试与修改。当我把所有的功能完成以后,已经花了将近五天的时间,结果,编程程序检查我的源代码时候,有超过一百个错误。我顿时绝望了。我自己做的程序,我很想把它做好,我一个一个的检查,发现原来是我的结构体没有设置好,导致系统无法识别后面的源代码。对照书本上结构体例题把结构体给完成,剩下的便是一些小毛病。陆陆续续的修改了几天,最后一刻,发现程序能够运行了,我心情顿时兴奋澎湃了!

源代码

#include

#include

#include

#define N 1000

void shurujianli();

void liulan();

void chaxun();

void tongji();

void shanchu();

void printf_back();

void menu();

void main()

{

int n;

while(1)

{

menu();

scanf("%d",&n);

switch(n)

{

case 1:

shurujianli();break; /*建立新的罚单 */ case 2:

shanchu();break; /*删除处罚单 */

case 3:

liulan();break; /*浏览交通处罚单相关信息*/

case 4:

chaxun();break; /*查询交通处罚单相关信息 */

case 5:

tongji();break; /*交通处罚单数据统计 */ case 6:

exit(0); /*退出*/

return;

}

}

}

void menu()

{

{

printf(" \n ");

printf(" 欢迎来到交通处罚单管理系统!

\n" );

printf("**************************************************

*****************************\n");

printf( " 1. 建立新的罚单

\n" );

printf( " 2. 删除交通处罚单

\n" );

printf( " 3. 浏览交通处罚单相关信息 \n" );

printf( " 4. 查询交通处罚单相关信息 \n" );

printf( " 5. 统计交通处罚单数据信息 \n" );

printf( " 6. 退出\n" );

printf( "************************************************* ******************************\n" );

printf("\t\t\t请输入您的操作(1-6):[ ]\b\b");

}

}

struct chufadan

{

int num; /*处罚单号码*/

int chepai; /*车牌号码*/

char name[10]; /*车主名字*/

int id; /*开单警察的信息ID*/

int year;

int month;

int day; /*处罚时间为年月日排列*/

}chufadan[N]; /*dan[500]中每个数组元素对应一个处罚单信息*/

void shurujianli() /*输入建立模块*/

{

int i,j,k;

int NUM;

FILE *fp; /*打开文件,定义指向文件的指针变量*/

if((fp=fopen("data.txt","r"))==NULL)

{

if((fp=fopen("data.txt","w"))==NULL)

{

printf("无法打开文件!\n");

exit(0);

}

printf("------------------------输入建立模块-----------------------------\n");

printf("\n你要输入多少条处罚单信息:");

scanf("%d",&j);

printf("\n\n请依次输入罚单信息:\n\n");

for(i=0;i

{

printf("请输入车牌号码:\n");

scanf("%d",&chufadan[i].chepai);

printf("请输入车主姓名:\n");

scanf("%s",chufadan[i].name);

printf("请输交警ID:\n");

scanf("%d",&chufadan[i].id);

printf("请输入开单日期:年.月.日\n");

scanf("%d.%d.%d",&chufadan[i].year,&chufadan[i].month,& chufadan[i].day);

printf("请输入处罚单号:\n");

scanf("%d",&chufadan[i].num);

printf("\n\n");

printf("-----------------------------------------------------------------\n");

fprintf(fp,"\n%5d %5d %10s %5d %d.%d.%d",

chufadan[i].num,chufadan[i].chepai,chufadan[i].name,chu fadan[i].id,chufadan[i].year,chufadan[i].month,chufadan[i] .day);

}

printf("输入信息成功!\n");

fclose (fp);

printf_back();

}

printf("------------------------输入建立模块-----------------------------\n");

fp=fopen("data.txt","r");

for(i=0;!feof(fp);i++) //读取文件

{

fscanf(fp,"%5d %5d %10s %5d %d.%d.%d",

&chufadan[i].num,&chufadan[i].chepai,chufadan[i].name,& chufadan[i].id,&chufadan[i].year,&chufadan[i].month,&chufa dan[i].day);

}

fp=fopen("data.txt","a");

printf("\n你要输入多少条处罚单信息:");

scanf("%d",&j);

NUM=i+j;

if(NUM>N)

{

printf("您输入的所有数据超过储存最大限额!/n请联系管理系统开发人员。");

exit(0);

}

printf("\n");

for(k=i;k

{

printf("请输入车牌号码:\n");

scanf("%d",&chufadan[k].chepai);

printf("请输入车主姓名:\n");

scanf("%s",chufadan[k].name);

printf("请输交警ID:\n");

scanf("%d",&chufadan[k].id);

printf("请输入开单日期:年.月.日\n");

scanf("%d.%d.%d",&chufadan[k].year,&chufadan[k].month,&

chufadan[k].day);

printf("请输入处罚单号:\n");

scanf("%d",&chufadan[k].num);

printf("\n\n");

printf("-----------------------------------------------------------------\n");

}

for(k=i;k

{

fprintf(fp,"\n%5d %5d %10s %5d %d.%d.%d",

chufadan[k].num,chufadan[k].chepai,chufadan[k].name,chu fadan[k].id,chufadan[k].year,chufadan[k].month,chufadan[k] .day); /*向文件输入*/

}

printf("输入信息成功!\n");

fclose (fp);

printf_back();

}

void shanchu() /*删除模块*/

{

int i;

int m;

int c; //待删除罚单号码

int w; //删除罚单号码

int t;

int NUM;

int flag=0;

FILE *fp;

printf("------------------------删除模块--------------------------------\n");

printf("请输入管理员密码:\n");

scanf("%d",&m);

if(m==123456)

{

printf("密码输入正确!\n");

printf("请输入要删除的处罚单号:");

scanf("%d",&w);

fp=fopen("data.txt","r");

大一上期C语言实验报告1熟悉实验环境

成都工业学院·计算机工程学院 《程序设计基础》实验报告 1.实验目的 (1)熟悉C语言运行环境,了解和使用Visual6.0++集成开发环境(2)熟悉Visual6.0++环境的功能键和常用的功能菜单命令 (3)掌握C语言程序的书写格式和C语言程序的结构 (4)掌握C语言上机步骤,以及编辑、编译和运行一个C语言程序的方法 (5)熟悉Visual6.0++环境下的程序调试方法 2.实验内容 (1)按照实验步骤编辑、编译、运行第一个”Hello World”程序(2)利用实验指导中的第二个程序熟悉调试工具,在已知x,y值的情况下,计算出x和y的和、差、积、商,并显示出来(3)编写一个程序,输入a、b、c三个值,输出它们的和与平均值c 3.源程序 (1)#include void main() {printf(”Hello World”);} (2)#include void main() {int x=5,y=2; int s,d,p,q; s=x+y; d=x-y; p=x*y; q=x/y; printf(“和:%d差:%d积%d商:%d“,s,d,p,q);}

(3)#include void main() {int a,b,c.sum; float ave; Printf(“Please enter the a,b,c:”); scanf(“%d%d%d”,&a,&b,&c); sum=a+b+c; ave=(float)sum/3; printf(“sum=%d,ave=%f\n”,sum,ave);} 4.运行结果 (1) (2) (3)输入18、46、69测试得出答案如下

C语言实验报告《指针》.doc

C语言实验报告《指针》 学号:__________ 姓名:__________ 班级:__________ 日期:__________ 指导教师:__________ 成绩:__________ 实验五指针 一、实验目的 1、掌握指针的概念、会定义和使用指针变量 2、掌握指向数组的指针变量 3、掌握字符串指针的使用 二、实验内容2、写一函数,求一个字符串的长度。在main函数中输入字符串,并输出其长度。(习题10.6)#include #include long fun(char *p) { 填写程序 } void main() { char s[6]; long n; printf( enter a string:n gets(s); n=fun(s); printf( %ldn ,n); }

一、三、实验步骤与过程 四、程序调试记录 C语言实验报告《综合实验》 学号:__________ 姓名:__________ 班级:__________ 日期:__________ 指导教师:__________ 成绩:__________ 实验六综合实验 一、实验目的 1、掌握C语言中的变量、数组、函数、指针、结构体等主要知识点。 2、掌握C程序的结构化程序设计方法,能使用C语言开发简单的应用程序。 3、掌握C程序的运行、调试方法等。 二、实验内容 编写一个学生信息排序程序。要求:

1、程序运行时可输入n个学生的信息和成绩(n预先定义)。 2、学生信息包括:学号、英文姓名、年龄;学生成绩包括:语文、数学、计算机。 3、给出一个排序选择列表,能够按照上述所列信息(学号、姓名、年龄、语文、数学、计算机)中的至少一个字段进行排序,并显示其结果。 1、使用函数方法定义各个模块。 三、实验步骤与过程 物理实验报告·化学实验报告·生物实验报告·实验报告格式·实验报告模板 四、程序调试记录

C语言实验报告《函数》

C语言实验报告《函数》 C语言实验报告《函数》 学号: __________ 姓名: __________ 班级: __________ 日期: __________ 指导教师: __________ 成绩: __________ 实验四函数 一、实验目的 1、掌握函数定义、调用和声明的方法 2、掌握实参和形参之间的传递方式 3、函数的嵌套调用 二、实验内容 1、写一个函数,将两个字符串连接。(习题 8. 6) 2、编写一个函数,由实参传来一个字符串,统计此字符串中字母、数字、空格和其他字符的个数,在主函数中输入字符串以及输出上述的结果。(习题 8.9)

3、请将实验三中的实验内容三改正后,再改写成函数形式(排序部分)。物理实验报告·化学实验报告·生物实验报告·实验报告格式·实验报告模板 三、实验步骤与过程 四、程序调试记录 一、实验目的 1.观察植物细胞有丝分裂的过程,识别有丝分裂的不同时期。 初步掌握制作洋葱根尖有丝分裂装片的技能。 3.初步掌握绘制生物图的方法。 二、实验原理在植物体中,有丝分裂常见于根尖、茎尖等分生区细胞,高等植物细胞有丝分裂的过程,分为分裂间期和分裂期的前期、中期、后期、末期。可以用高倍显微镜观察植物细胞的有丝分裂的过程,根据各个时期细胞内染色体(或染色质)的变化情况,识别该细胞处于有丝分裂的哪个时期,细胞核内的染色体容易被碱性染料着色。 三、材料用具洋葱根尖、显微镜、载玻片、盖玻片、滴管、镊子、培养皿、铅笔、质量分数为15%的盐酸、体积分数为95%的酒精、质量分数为0.01gml的龙胆紫(或紫药水) 四、实验过程(见书P39) 1.洋葱根尖的培养(提前3—4天) 2.解离: 5min 3.漂洗: 10min 4.染色: 5min

c语言交通处罚单管理系统(含实验报告和源代码)

C语言程序设计 课程设计材料 学生姓名:王嘉廉学号:11562255123 系 (院):信息工程学院 专业:信息管理与信息系统 设计(论文)题目: 交通处罚单管理系统 完成日期: 2012年9月 指导教师: xx! 二○一二年九月

●课程设计目的 (3) ●课程设计内容 (3) ●总体设计 (3) ●详细设计 (4) ●运行结果 (8) ●程序调试 (10) ●编程体会 (11)

一、课程设计目的 1.通过课程设计,加深对结构化程序设计思想的理解,能对系统功能进行分析,并设 计合理的模块化结构。 2.通过课程设计,进一步掌握C有并重要的数据结构。掌握并熟练运用指针、链表、 结构体、文件等数据结构。 3.通过课程设计,提高程序开发能力,能运用合理的控制流编写清晰高效的程序。 4.通过课程设计,培养C语言知识运用和自学能力,真正的把课堂上获得的知识运用 起来,培养自己对程序编写的兴趣,并能独立设计和实现一个中小型系统。 5.通过课程设计,加强了自己的程序分析能力。 6.通过课程设计,完成了交通处罚单管理系统,很多功能还待完善。 二、课程设计内容 用C语言编写软件完成以下任务: 1交通处罚单基本信息输入(数据包括处罚单号码,车牌号码,姓名,开单警察的信息ID,处罚时间等),信息保存在data.txt文件中, 2交通处罚单基本信息浏览。将文件内所有的交通处罚单信息全部输出展现出来。 3交通处罚单基本信息查询。可以查询特定的交通处罚单信息。 4交通处罚单基本信息统计。可以查询某一个时间段的所有的交通处罚单信息。 5 交通处罚单基本信息删除。删除不需要的交通处罚单信息。 三、总体设计 本系统的功能模块如图1所示,主要有以下模块: (1)交通处罚单基本信息输入:构造函数void shurujianli()),对产生新的交通处罚单的信息进行输入。 (2)交通处罚单基本信息浏览:构造函数void liulan(),全部浏览已被录入交通处罚单的所有信息。 (3)交通处罚单基本信息查询:构造函数void chaxun(),输入想要查询的方式,用三种方式查询交通处罚单基本信息。 (4)交通处罚单基本信息统计:构造函数void tongji(),对文件中所有的交通处罚单进行精确统计。 (5)交通处罚单基本信息删除:构造函数void shanchu(),通过输入书名,判断此交通处罚单是否存在,若存在,则删除该交通处罚单所有信息,然后再把剩下的交通处罚单信息保存到文件。

C语言实验报告参考答案 原

C语言实验报告参考答案 实验一熟悉C语言程序开发环境及数据描述 四、程序清单 1.编写程序实现在屏幕上显示以下结果: The dress is long The shoes are big The trousers are black 答案: #include main() { printf("The dress is long\n"); printf("The shoes are big\n"); printf("The trousers are black\n"); } 2.编写程序: (1) a=150,b=20,c=45,编写求a/b、a/c(商)和a%b、a%c(余数)的程序。 (2)a=160,b=46,c=18,d=170, 编写求(a+b)/(b-c)*(c-d)的程序。 答案: (1) #include main() {

int a,b,c,x,y; a=150; b=20; c=45; x=a/b; y=a/c; printf("a/b的商=%d\n",x); printf("a/c的商=%d\n",y); x=a%b; y=a%c; printf("a/b的余数=%d\n",x); printf("a/c的余数=%d\n",y); } (2) #include main() { int a,b,c,d; float x; a=160; b=46; c=18;

d=170; x=(a+b)/(b-c)*(c-d); printf("(a+b)/(b-c)*(c-d)=%f\n",x); } 3. 设变量a的值为0,b的值为-10,编写程序:当a>b时,将b赋给c;当a<=b 时,将0赋给c。(提示:用条件运算符) 答案: #include main() { int a,b,c; a=0; b=-10; c= (a>b) ? b:a; printf("c = %d\n",c); } 五、调试和测试结果 1.编译、连接无错,运行后屏幕上显示以下结果: The dress is long The shoes are big The trousers are black 2、(1) 编译、连接无错,运行后屏幕上显示以下结果: a/b的商=7

c语言实验报告6 指针

实验6 指针1.实验目的和要求 (1)掌握指针的概念、指针变量定义格式和引用。 (2)掌握指针的运算方法。 (3)掌握数组的指针和指向数组的指针变量。 (4)掌握指针与函数的关系。 (5)能正确使用字符串的指针和指向字符串的指针变量。(6)了解指向函数的指针。 (7)了解指向指针变量的指针。 2.实验内容:实验指导书中的实验九。 3.实验步骤 9.1 调试程序,找出程序的错误。 改正后的程序代码(贴图): 运行结果(帖图): 9.2 运行程序:

运行结果:; 9.3 修改程序错误,并运行。 改正后程序代码: 运行结果(帖图): 9.4. 程序填空:

运行结果(请帖图):9.5. 程序填空:

程序填空: #include main() { int a[5][5]={0},*p[5],i,j; for(i=0; i<5; i++) p[i]= &a[i][0] ; for(i=0; i<5; i++) { *(p[i]+ i )=1; *(p[i]+5- (i+1) )=1; } for(i=0; i<5; i++) { for(j=0; j<5; j++) printf("%2d", p[i][j]); Printf("\n") ; } } 运行结果(请帖图):

9.6 编程(选作) #include main() { int *p,a[20],i,k,m,n; p=a; printf("请输入人数n:"); scanf("%d",&n); for(i=0;i

c语言实验报告

C语言实验报告 说明 1,所有程序均用VC6.0编译运行,文件名命名为姓名+日期,因为实验存在补做,所以并不是按照日期先后排列的。 2,为了使截图清晰,手动将运行窗口由“黑底白字”改为了“白底黑字”。 实验2 数据类型、运算符和表达式 一、实验目的: (1)掌握C语言数据类型,熟悉如何定义一个整型、字符型、实型变量、以及对它们赋值的方法。 (2)学会使用C的有关算术运算符,以及包含这些运算符的表达式,特别是自加(++)和自减(――)运算符的使用。 (3)掌握C语言的输入和输出函数的使用 (4)进一步熟悉C程序的编辑、编译、连接和运行的过程。 三、程序调试与问题解决: (1)输人并运行下面的程序 #include void main() { char c1,c2; c1='a'; c2='b'; printf("%c %c\n",c1,c2); } ○1运行此程序。 ○2在上面printf语句的下面再增加一个printf语句。

printf("%d %d\n",c1,c2); 再运行,并分析结果。 输出结果如图,编译成功,无错误。 ○3将第3行改为 int c1,c2; 再运行,并分析结果。 ○4再将第4、5行改为 c1=a; c2=b; 再运行,并分析结果。 a,b没有定义,编译报错。 ○5再将第4、5行改为 c1=‘’a‘’; c2=‘’b‘’; 再运行,并分析结果。 ○6再将第4、5行改为 c1=300; c2=400; 再运行,并分析结果。 以字符型输出时,输出的将是300,400对应的字符。 (2)输人并运行教材第3章习题3. 6给出的程序 #include main () { char c1='a',c2='b',c3='c',c4='\101',c5='\116';

船舶交通管理系统安全监督管理规则(新版)

When the lives of employees or national property are endangered, production activities are stopped to rectify and eliminate dangerous factors. (安全管理) 单位:___________________ 姓名:___________________ 日期:___________________ 船舶交通管理系统安全监督管理 规则(新版)

船舶交通管理系统安全监督管理规则(新版)导语:生产有了安全保障,才能持续、稳定发展。生产活动中事故层出不穷,生产势必陷于混乱、甚至瘫痪状态。当生产与安全发生矛盾、危及职工生命或国家财产时,生产活动停下来整治、消除危险因素以后,生产形势会变得更好。"安全第一" 的提法,决非把安全摆到生产之上;忽视安全自然是一种错误。 第一章总则 第一条为保障船舶交通安全,提高船舶交通效率,保护水域环境,根据《中华人民共和国海上交通安全法》、《中华人民共和国船舶交通管理系统安全监督管理规则》等有关法律、法规,制定本规则。 第二条本规则适用于在中华人民共和国烟台海事局烟台船舶交通管理系统(以下简称VTS系统)管理区域(以下简称VTS区域)内航行、停泊和作业的船舶、设施(以下简称船舶)及其相关单位和人员。 第三条中华人民共和国烟台海事局是实施本规则的主管机关(以下简称主管机关)。 烟台海事局船舶交通管理中心(以下简称VTS中心)依据本规则负责具体实施船舶交通管理和提供交通服务。 第二章船舶报告 第四条船舶进烟台港驶抵第一报告线时,应向VTS中心报告船名、船位、进港目的以及VTS中心要求的其他事项,载有危险货物的船舶还

交通罚单管理系统方案

目录 一.系统开发的背景 (2) 二.系统分析与设计 (2) (一)系统功能要求 (2) (二)系统模块结构设计 (2) 三.系统的设计与实现 (3) (一)罚单基本信息录入:input() (3) (二)信息删除:delete() (6) (三)find函数 (9) (四)show函数 (13) (五)sum函数 (14) 四.系统测试 (16) (一)测试input函数 (16) (二)测试delet函数 (17) (三)测试find函数 (18) (四)测试show函数 (18) (五)测试sum函数 (19) 五、总结 (20) 六、附件(代码、部分图表) (21)

交通罚单管理系统 一.系统开发的背景 为了方便单位对交通处罚的经一步解交通处罚单信息用文件存储,提供文件的输入输出操作;要求可以输入、删除、浏览交通处罚单信息,因而要提供信息的输入、删除和显示操作;要实现按车辆、驾驶员和开单交警查询,则要提供查找操作;另外提供统计操作和键盘式选择菜单以实现功能选择。 二.系统分析与设计 (一)系统功能要求 可以录入交通罚单的信息,交通处罚单信息用文件存储,因而要提供文件的输入输出操作。 1.要求可以输入、删除、浏览交通处罚单信息,因而要提供 信息的输入、删除和显示操作; 2.要实现按车辆、驾驶员和开单交警查询,则要提供查找操 作; 3.另外提供统计操作和键盘式选择菜单以实现功能选择。 4.罚单信息(包括车牌号、驾驶员、交警、交警编号、罚单编 号) (二)系统模块结构设计 通过对系统功能的分析,交通罚单管理系统功能如图所示

图1 交通管理系统功能图 通过上图的功能分析,把整个系统划分为5个模块: 1、交通罚单信息录入,该模块主要实现:车牌号、驾驶员、 交警、交警编号、罚单编号的输入,用input函数实现。 2、信息删除模块,该模块主要实现信息的删除,用delet 函数实现。 3、信息查询模块,该模块主要实现信息的查询﹕有车牌号 查询、驾驶员查询、交警查询,共用四个函数进行查询, 分别是find, 4、信息统计模块,主要实现的是罚单数量的统计,用sum 函数实现。 三.系统的设计与实现 (一)罚单基本信息录入:input() 分析:先输出表头,然后进行罚单的信息输入,单独看各个数据信息,开单日期以及驾驶员为字符型,可以采用字符型数组;处罚单、车牌以及交警ID为整型,可以采用整型数组。一条记录对应一交通处罚

C语言实验报告参考答案

长沙理工大学2010C语言实验报告参考答案 实验一熟悉C语言程序开发环境及数据描述 四、程序清单 1.编写程序实现在屏幕上显示以下结果: The dress is long The shoes are big The trousers are black 答案: #include<> main() { printf("The dress is long\n"); printf("The shoes are big\n"); printf("The trousers are black\n"); } 2.改错题(将正确程序写在指定位置) 正确的程序为: #include <> main() { printf("商品名称价格\n"); printf("TCL电视机¥7600\n"); printf("美的空调¥2000\n"); printf("SunRose键盘¥\n"); } 2.编写程序: a=150,b=20,c=45,编写求a/b、a/c(商)和a%b、a%c(余数)的程序。 答案: #include<> main() { int a,b,c,x,y; a=150; b=20; c=45;

x=a/b; y=a/c; printf("a/b的商=%d\n",x); printf("a/c的商=%d\n",y); x=a%b; y=a%c; printf("a/b的余数=%d\n",x); printf("a/c的余数=%d\n",y); } 4. 设变量a的值为0,b的值为-10,编写程序:当a>b时,将b赋给c;当a<=b时,将a赋给c。(提示:用条件运算符) 答案: #include<> main() { int a,b,c; a=0; b=-10; c= (a>b) ? b:a; printf("c = %d\n",c); } 五、调试和测试结果 1.编译、连接无错,运行后屏幕上显示以下结果: The dress is long The shoes are big The trousers are black 3、编译、连接无错,运行后屏幕上显示以下结果: a/b的商=7 a/c的商=3 a/b的余数=10 a/c的余数=15 4. 编译、连接无错,运行后屏幕上显示以下结果: c =-10 实验二顺序结构程序设计 四、程序清单 1.键盘输入与屏幕输出练习 问题1 D 。 问题2 改printf("%c,%c,%d\n",a,b,c);这条语句

C语言指针实验报告

C语言程序设计实验报告 1实验目的 (1)掌握指针的概念,会定义和使用指针变量; (2)能正确使用变量的指针和指向变量的指针变量; (3)能正确使用数组的指针和指向数组的指针变量; (4)能正确使用字符串的指针和指向字符串的指针变量; 2实验内容 将一个任意整数插入到已排序的整形数组中,插入后,数组中的数仍然保持有序;要求: (1)整形数组直接由赋值的方式初始化,要插入的整数有scanf()函数数入;(2)算法实现过程采用指针进行处理; (3)输入原始数据以及插入整数后的数据,并加以说明;

3算法描述流程图

4源程序 #include main() { int a[100],m,i,*p,n,w; printf("请输入要输入的数组的元素个数:\n"); scanf("%d",&n); printf("请输入已排好序的数组:\n"); for(i=0;i=w;i--) { a[i+1]=a[i]; } a[i+1]=m; for(i=0;i<=n;i++) { printf("%-4d",a[i]); } printf("\n"); } 5测试数据 “1,3,5,7,9,11,13,15,17,19······10” 6运行结果 7出现问题及解决方法 在编写过程中,

for(i=n-1;a[i]>=w;i--) { a[i+1]=a[i]; } a[i+1]=m; 这一步没有注意a[i++]=m和a[i+1]=m中i++和i+1不同,a[i++]=m是先将的值赋给a[i],然后在执行自增;而在实验过程中忽略了这一点,造成了不必要的麻烦; 8实验心得 通过这次指针实验掌握了指针的概念,会定义和使用指针变量,并且能利用指针来简单化一些问题,给以后的编程带来了很大的便利;

船 舶 交 通 管 理

船舶交通管理 Vessel traffic management 一、船舶交通 1.船舶交通及其要素 船舶交通(vessel traffic): 海上交通(marine traffic):船舶在海面上的移动行为; 水上交通(waterborne traffic):船舶在江河、运河、湖泊等水域的移动行为。 船舶交通要素:航路、船舶、动力和驾驶技术。 (1)航路:按照自然状态可分为大洋航路、狭水道航路和沿岸航路。 ①大洋航路:指远海与大洋上不受地形和水深限制、自然碍航物极少的自然航路。在这种航路上船舶可以不考虑水深等因素而自主地选择航线。 ②狭水道航路:由于陆岸、岛屿、暗礁等地形条件限制,可航水域狭窄,船舶仅能在限定水域内选择航线以及经过人工疏浚所形成的水道,船舶基本上没有选择航线的自由。 ③沿岸航路:地理上介于大洋航路和狭水道航路之间的航路。在沿岸航路上航行要受到地形、岛屿等的限制,船舶选择航线也受到一定的限制,但仍有较大的余地。航路还可分为自由航路和法定航路。 (2)船舶:船舶交通的主体,也是船舶交通管理的主要客体。在 ①按照船舶大小分有小型船(100~500 总吨),中型船(500~3 000 总吨),大型船(3000~ 20 000 总吨),巨大型船(20 000~100 000 总吨)及超大型船(100 000 总吨以上); ②按照船舶动力形式分有机动船和非机动船; ③按照船舶用途分有杂货船、散货船、滚装船、集装箱船、油船、客船、液化气船、化 学品船、渔船、工程作业船等。 (3)动力:船舶能够航行的必要条件。 (4)驾驶技术:不仅与船舶驾驶人员所具有的航海知识有关,而且还与船舶驾驶人员所具有的生理、心理素质以及航行经验有关。 2.船舶交通的现状与特点 (l)船舶种类多样化和专业化。 (2)船舶趋于大型化。 (3)船舶交通流量急剧增大,对航行水域的管理越来越严格。 (4)船舶设备条件不断改善。 (5)涉及船舶交通的法规不断增多。。 船舶交通的特点:船舶种类繁多、差异较大;交通流量大,尤其是繁忙水道和港湾,船舶交通拥挤;船舶交通事故频繁,所产生的危害给社会带来的影响增大。 二、船舶交通管理系统 1.概念和目的和意义 船舶交通管理(vessel traffic management,VTM):通过监控、整顿船舶交通,建立良好的交通秩序,协助船舶航行,减少海难事故,特别是船舶碰撞、搁浅、触礁这些船舶交通事故的发生,从而保证船舶安全,保护水域环境和社会环境,提高船舶交通的效率。 船舶交通管理的目的和意义:增进安全、提高效率、保护环境。 2.船舶交通管理的手段和内容 (1)管理手段:法规约束和服务两个手段。 制定和实施船舶交通管理法规。 交通服务:信息服务、助航服务等。 (2)管理方式

C语言程序设计之交通处罚单管理系统 报告(内含代码)

C语言程序设计 姓名:张强强 学号:20121003695 班序号:011121

前言: C语言是近年来国内得到迅速推广使用的一种计算机语言。C语言程序设计课程是计算机专业和信息管理专业的核心专业基础课,无论是计算机专业还是非计算器专业的学生,学习好C语言是非常重要的。 一.交通处罚单管理 要求: 交通处罚单涉及到车辆,驾驶员和开单交警的信息,还有交通处罚单的号码,处罚时间等信息。 功能: (1) 要求可以输入,删除,浏览交通处罚单信息。 (2) 可以按车辆,驾驶员和开单交警进行查询。 (3) 统计某时间段某个驾驶员的交通处罚数目及交通处罚单号码。 (一)需求分析 交通处罚单信息用文件存储,提供文件的输入输出操作;要求可以输入,输出, 删除,浏览交通处罚单信息,因而要提供输入,删除和显示操作;要实现按车辆,驾 驶员和开单交警查询,则要提供查找操作;另外提供统计操作和键盘式选择菜单 以实现功能选择。 (二)总体设计 整个管理系统被设计为信息输入模块,信息删除模块,信息浏览模块,信息查 询模块和信息统计模块等。如下图:

(三)详细设计 1.主函数实现的是显示菜单以及函数调用,其中各功能模块用菜单方式选择。程序: int main() { int n; /**变量n保存选择菜单数字**/ printf("\n\n") printf ( " ****************菜单*****************\n"); printf ( " * *\n"); printf ( " * 1.输入 2.删除 *\n"); printf ( " * *\n"); printf ( " * 3.浏览 4.查询 *\n"); printf ( " * *\n"); Printf ( " * 5.统计 6.退出*\n"); printf ( "* *\n"); printf("****************************************\n"); printf("请选择功能菜单: [ ]\b\b"); scanf("%d",&n); if (n<1||n>7) n=7;

2010C语言实验报告参考答案

2010C语言实验报告参考答案

长沙理工大学2010C语言实验报告参考答案 实验一熟悉C语言程序开发环境及数据描述四、程序清单 1.编写程序实现在屏幕上显示以下结果: The dress is long The shoes are big The trousers are black 答案: #include main() { printf("The dress is long\n"); printf("The shoes are big\n"); printf("The trousers are black\n"); } 2.改错题(将正确程序写在指定位置) 正确的程序为: #include main() {

printf("商品名称价格\n"); printf("TCL电视机¥7600\n"); printf("美的空调¥2000\n"); printf("SunRose键盘¥50.5\n"); } 2.编写程序: a=150,b=20,c=45,编写求a/b、a/c(商)和a%b、a%c(余数)的程序。 答案: #include main() { int a,b,c,x,y; a=150; b=20; c=45; x=a/b; y=a/c; printf("a/b的商=%d\n",x); printf("a/c的商=%d\n",y);

x=a%b; y=a%c; printf("a/b的余数=%d\n",x); printf("a/c的余数=%d\n",y); } 4. 设变量a的值为0,b的值为-10,编写程序:当a>b时,将b赋给c;当a<=b时,将a赋给c。(提示:用条件运算符) 答案: #include main() { int a,b,c; a=0; b=-10; c= (a>b) ? b:a;

交通罚单管理系统

交通罚单管理系统 一.系统开发的背景 (2) 二.系统分析与设计 (2) (一)系统功能要求 (2) (二)系统模块结构设计 (2) 三.系统的设计与实现 (3) (一)罚单基本信息录入:input() (3) (二)信息删除:delete() (6) (三)find函数 (9) (四)show函数 (13) (五)sum函数 (14) 四.系统测试 (16) (一)测试input函数 (16) (二)测试delet函数 (17) (三)测试find函数 (18) (四)测试show函数 (18) (五)测试sum函数 (19) 五、总结 (20) 六、附件(代码、部分图表) (21)

交通罚单管理系统 一.系统开发的背景 为了方便单位对交通处罚的经一步解交通处罚单信息用文件存储,提供文件的输入输出操作;要求可以输入、删除、浏览交通处罚单信息,因而要提供信息的输入、删除和显示操作;要实现按车辆、驾驶员和开单交警查询,则要提供查找操作;另外提供统计操作和键盘式选择菜单以实现功能选择。 二.系统分析与设计 (一)系统功能要求 可以录入交通罚单的信息,交通处罚单信息用文件存储,因而要提供文件的输入输出操作。 1.要求可以输入、删除、浏览交通处罚单信息,因而要提供 信息的输入、删除和显示操作; 2.要实现按车辆、驾驶员和开单交警查询,则要提供查找操 作; 3.另外提供统计操作和键盘式选择菜单以实现功能选择。 4.罚单信息(包括车牌号、驾驶员姓名、交警姓名、交警编号、 罚单编号) (二)系统模块结构设计 通过对系统功能的分析,交通罚单管理系统功能如图所示

图1 交通管理系统功能图 通过上图的功能分析,把整个系统划分为5个模块: 1、交通罚单信息录入,该模块主要实现:车牌号、驾驶员 姓名、交警姓名、交警编号、罚单编号的输入,用input 函数实现。 2、信息删除模块,该模块主要实现信息的删除,用delet 函数实现。 3、信息查询模块,该模块主要实现信息的查询﹕有车牌号 查询、驾驶员查询、交警查询,共用四个函数进行查询, 分别是find, 4、信息统计模块,主要实现的是罚单数量的统计,用sum 函数实现。 三.系统的设计与实现 (一)罚单基本信息录入:input() 分析:先输出表头,然后进行罚单的信息输入,单独看各个数据信息,开单日期以及驾驶员姓名为字符型,可以采用字符型数组;处罚单号

哈工大(威海)c语言实验报告册答案

实验1简单判定性问题求解 一、实验学时 完成本实验需4学时。 二、实验目的 1、阅读程序题 (1)掌握C语言数据类型,熟悉如何定义一个整型、字符型的变量,以及对它们赋值的方法; (2)掌握不同的类型数据之间赋值的规律; (3)掌握数据在内存中的存储方式; (4)学会输入、输出函数的基本格式和使用方法; (5)学会使用有关算术运算符、逻辑运算符、关系运算符,以及包含这些运算符的表达式。 2、编程题 (1)如何运用if-else判定性结构进行程序设计; (2)如何运用switch判定性结构进行程序设计。 3、调试题 (1)熟悉C程序的编辑、编译、连接和运行的过程。 三、实验指导 为了达到最佳的实验效果,以下提供几条适于编程的指导意见,可供参考。 1、阅读程序题应先运用自己在课堂所学的知识,推导出结果,在上机时输入计算机,印证自己推导的结果,注意观察数据在内存中的存储方式、含不同种运算符表达式的输出结果。 2、编程题必须首先画出流程图,并反复思考判断程序设计的正确性,完成程序的设计。要注意简单判定性问题的结构选择。 3、调试题应明确程序的调试、测试是一项非常烦琐的工作,也是非常重要的工作。对于初学者来说应该建立良好的习惯,在调试程序的时候,应该尽可能考虑到程序运行时各种可能情况。

四、实验内容 1、阅读程序题 (1)main( ) { /*定义字符型变量*/ char c1,c2; /*向字符变量赋以整数*/ c1=97; c2=98; printf("%c %c\n",c1,c2); /*以字符形式输出*/ printf("%d %d\n",c1,c2); /*以整数形式输出*/ } 思考:可否改成int c1,c2;输出结果是?相同 (2)main() { int a=7,b=5; printf("%d\n",b=b/a); } 思考:若将printf语句中%d变为%f,可否输出分式的值?可以(3)main() { int a=9; a+=a-=a+a; /*包含复合的赋值运算符的赋值表达式*/ printf("%d\n",a); } 思考:赋值表达式a+=a-=a+a的求解步骤? 第一步:a=a-(a+a)=-9 第二步a=a+a=18 (4)main() { int k=-1; printf("%d,%u\n",k,k);

C语言指针实验报告

C语言程序设计实验报告 1实验目得 (1)掌握指针得概念,会定义与使用指针变量; (2)能正确使用变量得指针与指向变量得指针变量; (3)能正确使用数组得指针与指向数组得指针变量; (4)能正确使用字符串得指针与指向字符串得指针变量; 2实验内容 将一个任意整数插入到已排序得整形数组中,插入后,数组中得数仍然保持有序; 要求: (1)整形数组直接由赋值得方式初始化,要插入得整数有scanf()函数数入; (2)算法实现过程采用指针进行处理; (3)输入原始数据以及插入整数后得数据,并加以说明;

3算法描述流程图

4源程序 #include main() { int a[100],m,i,*p,n,w; printf("请输入要输入得数组得元素个数:\n"); scanf("%d",&n); printf("请输入已排好序得数组:\n"); for(i=0;i=w;i--) { a[i+1]=a[i]; } a[i+1]=m; for(i=0;i<=n;i++) { printf("%-4d",a[i]); } printf("\n"); } 5测试数据 “1,3,5,7,9,11,13,15,17,19······10” 6运行结果 7出现问题及解决方法 在编写过程中,

for(i=n-1;a[i]>=w;i--) { a[i+1]=a[i]; } a[i+1]=m; 这一步没有注意a[i++]=m与a[i+1]=m中i++与i+1不同,a[i++]=m就是先将得值赋给a[i],然后在执行自增;而在实验过程中忽略了这一点,造成了不必要得麻烦; 8实验心得 通过这次指针实验掌握了指针得概念,会定义与使用指针变量,并且能利用指针来简单化一些问题,给以后得编程带来了很大得便利;

【C语言实战应用】交通处罚单管理系统

C语言实践应用 交通处罚单管理系统 内容: 〔要求〕交通处罚单涉及到车辆、驾驶员和开单交警的信息,还有交通处罚单号码,处罚时间等信息。 功能: (1)要求可以输入、删除、浏览交通处罚单信息。 (2)可以按车辆、驾驶员和开单交警查询。 (3)统计某时间段某个驾驶员的交通处罚单数目及交通处罚单号码。 第二部分:需求分析 1.交通处罚单信息用文件存储,提供文件的输入输出操作; 2.要求可以输入、删除、浏览交通处罚单信息,因而要提供信息的输入、删除和显示操作; 3.要车辆、驾驶员和开单交警查询,则要提供查找操作; 4.另外提供系统操作和键盘式选择菜单以实现功能选择。 第三部分:程序总体设计思路 由于C语言是面对过程的语言,故我的设计思路是根据目标程序运行的过程来编写的。 在编写本程序的过程中,首先,确定目标程序运行的次序与界面,

即本程序首先运行【用户系统】菜单界面,菜单界面上为用户提供信息输入,信息删除,信息查询,信息浏览,信息统计,退出菜单共六种操作选择。此功能用switch语句来实现。其次,根据目标程序运行的次序与界面,确定设计顺序,设计界面(包括各部分菜单与用户提示信息)。再次,按照程序运行的各界面下的菜单功能编写各功能模块,并调试程序各功能模块,使各模块能够稳定高效准确地完成对应功能。 第四部分:程序功能模块划分、图示及流程图 系统的结构图: . 【信息输入模块】 该模块的功能是为用户提供信息输入界面,用户可以根据信息提示进行信息输入,用户输入的信息将被保存在文件当中。 【流程图】

【程序】:

void shuru() { FILE *fp; int i=0; if((fp=fopen("data.txt","wb"))==NULL) { printf("Can not open the file\n"); exit(0);//调用此函数时必须包含 } printf("请输入车牌号码:\n"); scanf("%d",&dan[NUM ].chepai); printf("请输入驾驶员姓名:\n"); scanf("%s",dan[NUM ].name); printf("请输交警ID:\n"); scanf("%d",&dan[NUM ].id); printf("请输入开单日期(以年/月/日形式输入):\n"); scanf("%d/%d/%d",&dan[i].date.year,&dan[i].date.month,&dan[i].date.d ay); printf("请输入处罚单号:\n"); scanf("%d",&dan[NUM ].num); for (i=0;i<=NUM;i++)

C语言实验报告参考源代码

实验5三种基本结构的综合应用 4.一个素数(设为p)依次从最高位去掉一位,二位,三位,……,若得到的各数仍都是素数(注:除1和它本身外,不能被其它整数整除的正整数称为素数,1不是素数,2是素数),且数p的各位数字均不为零,则称该数p为逆向超级素数。例如,617,17,7都是素数,因此617是逆向超级素数,尽管503,03,3都是素数,但它不是逆向超级素数,因为它包含有零。试求[100,999]之内的所有逆向超级素数的个数。 #include "stdio.h" main() {int i,j,k,m,p,q,n=0; for(i=100;i<=999;i++) {for(j=2;j=i) /*三位数是素数时*/ {k=i%100; /*去掉百位数字*/ if(k>=10) /*十位数字不是0时*/ {for(m=2;m=k) /*两位数是素数时*/ {p=i%10; /*p为个位数字*/ for(q=2;q=p)n++;}}}} printf("%d\n",n);} Key:57 5.求[2,400]中相差为10的相邻素数对的对数。 #include "stdio.h" main() {int i,j,k,m,p,q,n=0; for(i=2;i<=400;i++) {for(j=2;j=i) /*i是素数时*/ {for(k=i+1;k=k)break;} /*k是素数时终止if语句的外层循环*/ if(k>=i+10) /*[i+1,i+9]不是素数时*/ {for(q=2;q

C语言程序设计之交通处罚单管理系统 分析报告(内含代码)

C语言程序设计之交通处罚单管理系统报告(内含代码)

————————————————————————————————作者:————————————————————————————————日期: 2

C语言程序设计 姓名:张强强 学号:20121003695 班序号:011121

前言: C语言是近年来国内得到迅速推广使用的一种计算机语言。C语言程序设计课程是计算机专业和信息管理专业的核心专业基础课,无论是计算机专业还是非计算器专业的学生,学习好C语言是非常重要的。 一.交通处罚单管理 要求: 交通处罚单涉及到车辆,驾驶员和开单交警的信息,还有交通处罚单的号码,处罚时间等信息。 功能: (1) 要求可以输入,删除,浏览交通处罚单信息。 (2) 可以按车辆,驾驶员和开单交警进行查询。 (3) 统计某时间段某个驾驶员的交通处罚数目及交通处罚单号码。 (一)需求分析 交通处罚单信息用文件存储,提供文件的输入输出操作;要求可以输入,输出, 删除,浏览交通处罚单信息,因而要提供输入,删除和显示操作;要实现按车辆,驾 驶员和开单交警查询,则要提供查找操作;另外提供统计操作和键盘式选择菜单 以实现功能选择。 (二)总体设计 整个管理系统被设计为信息输入模块,信息删除模块,信息浏览模块,信息查 询模块和信息统计模块等。如下图:

(三) 详细设计 1. 主函数实现的是显示菜单以及函数调用,其中各功能模块用菜单方式选择。 程序: int main() { int n; /**变量n 保存选择菜单数字**/ printf("\n\n") printf ( " ****************菜单*****************\n"); printf ( " * *\n"); printf ( " * 1.输入 2.删除 *\n"); printf ( " * *\n"); printf ( " * 3.浏览 4.查询 *\n"); printf ( " * *\n"); Printf ( " * 5.统计 6.退出*\n"); printf ( "* *\n"); printf("****************************************\n"); printf("请选择功能菜单: [ ]\b\b"); scanf("%d",&n); if (n<1||n>7) n=7; 交通处罚 信息信息信息 信息信息按车 按驾驶员查询 按交

相关主题
文本预览
相关文档 最新文档