C语言综合性设计实验报告
c语言综合实验报告
c语言综合实验报告《C语言综合实验报告》一、实验目的本次实验旨在通过综合性的C语言编程实践,加深学生对C语言程序设计的理解和掌握,提高学生的编程能力和解决问题的能力。
二、实验内容1. 编写一个简单的C语言程序,实现对用户输入的两个整数进行加法运算并输出结果。
2. 设计一个C语言程序,实现对用户输入的字符串进行逆序输出。
3. 编写一个C语言程序,实现对用户输入的一组整数进行排序并输出排序后的结果。
4. 设计一个C语言程序,实现对用户输入的一组学生成绩进行统计,包括平均分、最高分、最低分等。
三、实验过程1. 首先,对于加法运算的程序,我们使用scanf函数获取用户输入的两个整数,然后利用printf函数输出它们的和。
2. 对于字符串逆序输出的程序,我们使用gets函数获取用户输入的字符串,然后使用循环和数组实现逆序输出。
3. 对于排序程序,我们使用冒泡排序算法对用户输入的整数进行排序,并使用printf函数输出排序后的结果。
4. 对于学生成绩统计程序,我们使用循环获取用户输入的学生成绩,并计算平均分、最高分、最低分等统计信息,最后使用printf函数输出结果。
四、实验结果经过以上步骤,我们成功编写了四个C语言程序,分别实现了加法运算、字符串逆序输出、整数排序和学生成绩统计等功能。
这些程序在实际运行中均能正常工作,并得到了预期的结果。
五、实验总结通过本次实验,我们深入理解了C语言的基本语法和编程思想,掌握了常见的编程技巧和算法,并提高了自己的编程能力和解决问题的能力。
希望在今后的学习和工作中能够继续努力,不断提升自己的编程水平,为实现更多的创新和突破打下坚实的基础。
C语言综合设计性实验报告
管理系统等。自我感觉就是这一学期所学的都得到很运用,感受自己 在 C 语言上还是有一点基础的。这门课程也块结束了,经过自己的努 力得到了能力的提高是多么令人开心的事呀。 在下毅学期我一定更加 努力,争取去得更大的进步。
四、程序清单
五、运行结果
六、实验总结(调试分析和体会)
这几个星期我做综合实验, 这真是一个困难的作业, 虽然课前先预习, 上课认真听,但在学习上还是存在很多问题。因为接近期末考试了, 心思都放在复习上,在这个试验上没有花很陡时间,导致效果不是很 好,特别是一遇到困难就束手无策。幸好还有我们的老师,在老师的 帮助下,在自己的努力下,我终于完成了这个试验,感觉一下子充实 了很多。在这个综合实验中我完成了建立学生信息,每个学生的信息 包括:学号、姓名、性别、班级、至少 3 门课程的成绩;和数据输入: 输入学生的各项信息;数据修改:根据输入学生的学号可以选择修改 该学生的信息;还有数据处理:可以选择处理方式为:排序、查询、 统计。其中:排序:按平均分排序;查询:根据学号查询成绩;统计: 可以选择统计各学生的平均成绩或统计所有存在不及格科目的学生; 数据输出:输出学生的相应结果信息;退出程序:退出整个学生信息
显 示 主菜单
数据 数据 数据 数据 退出
输入
修改
排序
处理
查询 统计
输出
平均分
不及格 科 目
具体要求为: 1. 建立学生信息,每个学生的信息应包括:学号、姓名、性别、班级、至少 3 门课程 的成绩; 2. 数据输入:输入学生的各项信息; 3. 数据修改:根据输入学生的学号可以选择修改该学生的信息; 4. 数据处理:可以选择处理方式为:排序、查询、统计。其中: a) 排序:按平均分排序 b) 查询:根据学号查询成绩 c) 统计:可以选择统计各学生的平均成绩或统计所有存在不及格科目的学生; 5. 数据输出:输出学生的相应结果信息; 6.退出:退出整个学生信息管理系统。 三、程序组织结构图、函数调用关系图
C语言综合性设计方案性实验报告模版
计算机与信息技术学院综合性、设计性实验报告******** /2011 2012期一、实验目的菜单是应用程序的界面,控制语句用来改变程序执行的顺序,是实现结构化程序设计的基础。
本实验目的是锻炼使用控制语句的能力,巩固课堂所学程序设计语言基本知识。
完善自己的疏漏。
二、实验仪器或设备电脑三、总体设计(设计原理、设计方案及流程等)模块设计和结构化设计方法。
设计一个含有多个菜单项的菜单程序。
1)主菜单包括1、求n的阶乘2、求面积3、翻译电码4、温度转换5、四角星6退出2)用函数实现各模块功能。
3)每种操作完成后返回主菜单。
4)exit ( 0)函数用来退出程序四、实验步骤(包括主要步骤、代码分析等)1、完成程序的主框架设计,进行调试,2、详细设计,进行调试,3、进行整体调试;4、验证其设计的正确性,完成实验报告。
代码分析:#i nclude<stdio.h> // 编译预处理指令#i nclude<stdlib.h>#i nclude<math.h>〃用到数学函数int n,s[100];void mai n()〃定义主函数{void caida n();〃声明函数void yi();〃声明函数void er();〃声明函数void san();// 声明函数void si();// 声明函数void wu();// 声明函数void tuichu();〃 声明函数 caida n();int i;for(;;){sca nf("%d",&i);switch(i){case 1: yi();break;〃 case 2: er();break;// case 3: san( );break;〃 case 4: si();break;// case 5: wu();break;// case 6: tuichu();break;// } }}void caidan()〃 执行 caidan 函数 { prin tf(" 主菜单形式如下:\n1、换\n5、四角星\n6、退出\n 请输入菜单号:\n");}// 输出内容void yi()// 执行yi 函数{int i,t,j;〃 定义变量 i , t ,jprintf (” 请输入要计算阶乘的数\n");//输出内容scanf("%d",&t);〃 输入 t 值i=1;//赋初始值 j=1;while(i<=t)〃 当循环{j=j*i;// 计算 i=i+1;}printf(" 计算好的数是%d\n",j);}void er()// 执行er 函数{int a,b,area;printf(" 请输入长宽");scan f("%d,%d",&a,&b); area=a*b;printf("O( n _n )O~面积是:%d\n",area); 调用函数yi调用函数er调用函数san调用函数si调用函数wu调用函数tuichu求n 的阶乘\n2、求面积\n3、翻译电码\n4、温度转}void san(){char c;while((c=getchar())!='\n'){if((c>='A'&&c<='Z')||(c>='a'&&c<='z')) {c=c+4;if(c>='Z'&&c<='Z'||c>'z')c=c-26;}prin tf("%c",c);}prin tf("\n");}void si(){float f,c;printf(" 输入华氏度:");scan f("%f", &f);c=(5.0/9)*(f-32);printf(" 华氏度=%f\n 摄氏度=%f\n",f,c);}void wu(){char diamo nd[][5]={{' ',' ','*'},{' ','*',' ','*'},{'*',' ',' ',' ','*'},{' I 1^1 I I 1^1 },{' ',' ','*'}};int i,j; for(i=0;i<5;i++){for(j=0;j<5;j++)prin tf("%c",diamo nd[i][j]); prin tf("\n");}}void tuichu() {exit(0);}结果分析与总结结果分析:通过对主菜单的控制,实现各步操作,充分运用主、子函数之间的调用总结:先设计好一个大体的框架,再将各个调试好的子函数放入其中,最终实现函数的调用。
2023最新-c语言程序设计实验报告【2篇】
c语言程序设计实验报告【2篇】c语言程序设计实验报告篇一实验名称计算出1000以内10个最大素数之和实验目的1、熟练掌握if、if…else、if…else if语句和witch语句格式及使用方法,掌握if语句中的嵌套关系和匹配原则,利用if语句和switch语句实现分支选择结构。
2、熟练掌握while语句、do…while语句和for语句格式及使用方法,掌握三种循环控制语句的循环过程以及循环结构的嵌套,利用循环语句实现循环结构。
3、掌握简单、常用的算法,并在编程过程中体验各种算法的编程技巧。
进一步学习调试程序,掌握语法错误和逻辑错误的检查方法。
实验内容计算并输出1000以内最大的10个素数以及它们的和。
要求:在程序内部加必要的注释。
由于偶数不是素数,可以不考虑对偶数的处理。
虽然在1000以内的素数超过10个,但是要对1000以内不够10个素数的情况进行处理。
输出形式为:素数1+素数2+素数3+…+素数10=总和值。
算法描述流程图main函数:判断素数:源程序#include#includeint sushu(int n)/* 判断素数的函数*/{int t,i;t=sqrt(n);for(i=2;i=t;i++)if(n%i==0)/* 如果不是素数,返回0 */return 0;return n;/* 如果是素数,返回该数*/}void main(){int i,j=0,n,m=0,a[1000],x;/*clrscr();*/printf(please input a number form 1 to 1000:);scanf(%d,amp;x);if(x==2)/* x=2时的处理*/printf(%dn,x);else if(x=1) /* x在1~1000范围外时的处理*/printf(error!n);else{if(x%2==0)/* x为偶数时,把x变为奇数*/x--;for(i=x;i1;i-=2)/* x为奇数时,做函数计算*/{n=sushu(i);/* 做判断素数的函数调用*/if(n!=0)/* 对素数的处理*/{a[j]=n;/* 把素数由大至小存入数组a[ ]中*/j++;if(j11)m+=n; /* 统计前10个素数之和*/}}if(j10)/* 当素数个数小于10个时,结果输出*/{for(i=0;i{n=a[i];printf(%d,n);printf(+);}printf(2=);printf(%dn,m+2);}else for(i=0;i10;i++)/* 当素数个数大于等于10个时,结果输出*/{n=a[i];printf(%d,n);if(i9)printf(+);else{printf(=);printf(%dn,m);}}}}测试数据分别输入1000、100、10测试。
c语言实验报告5篇
c语言实验报告c语言实验报告5篇随着社会一步步向前发展,我们使用报告的情况越来越多,我们在写报告的时候要注意涵盖报告的基本要素。
其实写报告并没有想象中那么难,以下是小编收集整理的c语言实验报告,欢迎阅读与收藏。
c语言实验报告1学号:__________ 姓名:__________ 班级:__________ 日期:__________指导教师:__________ 成绩:__________实验六综合实验一、实验目的1、掌握C语言中的变量、数组、函数、指针、结构体等主要知识点。
2、掌握C程序的结构化程序设计方法,能使用C语言开发简单的应用程序。
3、掌握C程序的运行、调试方法等。
二、实验内容编写一个学生信息排序程序。
要求:1、程序运行时可输入n个学生的信息和成绩(n预先定义)。
2、学生信息包括:学号、英文姓名、年龄;学生成绩包括:语文、数学、计算机。
3、给出一个排序选择列表,能够按照上述所列信息(学号、姓名、年龄、语文、数学、计算机)中的至少一个字段进行排序,并显示其结果。
1、使用函数方法定义各个模块。
三、实验步骤与过程物理实验报告·化学实验报告·生物实验报告·实验报告格式·实验报告模板四、程序调试记录c语言实验报告2第一章基础掌握1.1 实验目的掌握C程序设计编程环境Visual C++,掌握运行一个C程序的基本步骤,包括编辑、编译、链接和运行。
(]1.2 实验要求在报告中记录建立、保存C程序实习过程。
1.3 实验基本内容编写程序,在屏幕上显示一个短句“Hello World”(1)程序:1)编译如下程序:#includeVoid main(){printf (“Hello World! ”);}2)链接。
执行Build-命令。
3)运行。
执行Build Execute 命令。
显示结果。
4)关闭程序工作区。
(2)运行结果:输出结果:Hello World!总结:掌握C语言程序设计的基本框架,能够编写简单的程序。
c语言综合实验报告
c语言综合实验报告C语言综合实验报告引言:C语言是一门广泛应用于计算机科学领域的编程语言,具有高效、灵活和可移植等特点。
在本次实验中,我们将通过综合实验来探索C语言的各种特性和用法。
本报告将详细介绍实验的目的、设计思路、实验过程、结果分析以及对C 语言的理解和应用。
一、实验目的本次综合实验旨在通过实践,加深对C语言的理解和应用。
具体目标包括:1. 熟悉C语言的基本语法和数据类型;2. 掌握C语言的输入输出操作;3. 理解和运用C语言的控制结构和函数;4. 实现一个简单的C语言项目,提升编程能力。
二、设计思路在本次实验中,我们选择了一个简单而实用的项目——学生成绩管理系统。
该系统可以实现学生信息的录入、查询、修改和删除等功能。
通过这个项目,我们能够全面运用C语言的各种特性和用法。
三、实验过程1. 定义结构体:首先,我们需要定义一个学生的结构体,包含学号、姓名和成绩等信息。
通过结构体,我们可以方便地对学生信息进行管理和操作。
2. 实现录入功能:接下来,我们编写一个函数,实现学生信息的录入。
通过用户输入学生的学号、姓名和成绩,我们可以将这些信息存储到结构体数组中,并将其保存到文件中。
3. 实现查询功能:为了方便查找学生信息,我们编写了一个查询函数。
该函数可以根据学号或姓名来查找学生信息,并将结果显示在屏幕上。
4. 实现修改功能:当需要修改学生信息时,我们可以调用修改函数。
该函数可以根据学号或姓名找到对应的学生信息,并允许用户修改学生的姓名和成绩。
5. 实现删除功能:最后,我们编写了一个删除函数,用于删除指定学生的信息。
用户只需要输入学号或姓名,系统就可以找到对应的学生并将其从结构体数组中删除。
四、结果分析经过实验,我们成功实现了学生成绩管理系统。
该系统具备录入、查询、修改和删除等功能,能够方便地管理学生的信息。
通过这个实验,我们不仅掌握了C语言的各种特性和用法,还提升了编程能力。
五、对C语言的理解和应用通过本次实验,我们对C语言有了更深入的理解和应用。
C语言程序设计实验报告-实验单元三综合设计
C语言程序设计实验报告-实验单元三综合设计《C语言程序设计》实验报告专业:班级:学号:学生姓名:实验日期:成绩:指导老师:实验单元三综合设计一、实验题目实验九文件实验十综合实验:学生成绩管理系统二、实验目的进一步加深、巩固所学课程(《C语言程序设计》)的基本理论知识,理论联系实际,培养自己综合分析问题和解决问题的能力。
掌握运用C语言独立编写、调试应用程序和进行其它相关设计的技能。
三、实验内容假设收集到了一个班学生的所有成绩信息(不低于20人),要求用C语言编写一个简单的成绩管理系统,对学生个人信息进行管理,可进行录入、浏览、查询、修改、排序、统计的功能。
信息内容包含:(1)学生的学号(2)学生的姓名(3)学生的成绩(语文、数学、英语、计算机,课程平均分)。
具体要求实现如下功能:1.录入、浏览功能:按学号顺序录入学生信息(学号、姓名、语文、数学、英语、计算机),显示系统中的所有信息。
2.查询功能:查询学号尾号为09的学生的所有信息并显示。
3.修改功能:修改学号尾号为12的学生的成绩信息(任意两项即可),并显示该学生的全部信息。
4.排序功能:按语文成绩的顺序,由高到低显示所有学生的信息。
5.统计功能:统计学生的平均成绩,并输出(学号,姓名,平均成绩)。
四、实验环境1. 硬件环境:当前所有电脑硬件环境均支持。
2. 软件环境:Visual C++ 6.0五、实验代码及结果(程序运行结果请以截屏图给出)源程序代码:实验结果:六、实验心得(请对每个实验题目编程及调试运行中遇到的问题及解决方案进行简单总结)。
C语言实验报告(精选9篇)
C语言实验报告C语言实验报告(精选9篇)在经济发展迅速的今天,我们都不可避免地要接触到报告,通常情况下,报告的内容含量大、篇幅较长。
写起报告来就毫无头绪?下面是小编帮大家整理的C语言实验报告,欢迎阅读与收藏。
C语言实验报告1在这个星期里,我们在专业老师的带领下进行了c语言程序实践学习。
在这之前,我们已经对c语言这门课程学习了一个学期,对其有了一定的了解,但是也仅仅是停留在了解的范围,对里面的好多东西还是很陌生,更多的在运用起来的时候还是感到很棘手,毕竟,万事开头难嘛。
由于时间的关系,我们的这次实践课程老师并没有给我们详细的介绍,只是给我们简单的介绍了几个比较重要的实际操作。
上机实验是学习程序设计语言必不可少的实践环节,特别是c语言灵活、简洁,更需要通过编程的实践来真正掌握它。
对于程序设计语言的学习目的,可以概括为学习语法规定、掌握程序设计方法、提高程序开发能力,这些都必须通过充分的实际上机操作才能完成。
学习c程序设计语言除了课堂讲授以外,必须保证有不少于课堂讲授学时的上机时间。
因为学时所限,课程不能安排过多的统一上机实验,所以希望学生有效地利用课程上机实验的机会,尽快掌握用c语言开发程序的能力,为今后的继续学习打下一个良好的基础。
个人认为课程上机实验的目的,不仅仅是验证教材和讲课的内容、检查自己所编的程序是否正确,课程安排的上机实验的目的可以概括为如下几个方面:1、加深对课堂讲授内容的理解课堂上要讲授许多关于c语言的语法规则,听起来十分枯燥无味,也不容易记住,死记硬背是不可取的。
然而要使用c语言这个工具解决实际问题,又必须掌握它。
通过多次上机练习,对于语法知识有了感性的认识,加深对它的理解,在理解的基础上就会自然而然地掌握c 语言的语法规定。
对于一些内容自己认为在课堂上听懂了,但上机实践中会发现原来理解的偏差,这是由于大部分学生是初次接触程序设计,缺乏程序设计的实践所致。
学习c语言不能停留在学习它的语法规则,而是利用学到的知识编写c语言程序,解决实际问题。
C语言实验报告9篇
C语言实验报告C语言实验报告9篇随着个人素质的提升,报告的适用范围越来越广泛,我们在写报告的时候要注意语言要准确、简洁。
写起报告来就毫无头绪?以下是小编为大家整理的C语言实验报告,仅供参考,欢迎大家阅读。
C语言实验报告1一、实习目的1.掌握在集成环境中编辑、编译、连接和运行C程序的方法。
(1)运行TC(2)启动TC集成环境,输入一个源程序,编译并运行。
2.掌握单步执行、设置/去除断点,观察变量或表达式的值。
(3)在该程序中按CTRL+F7单步招待并在观察窗口中查看变量和表达式的值。
(4)设置/去除断点,继续调试。
1、熟练掌握if.switch分支语句的使用。
2、熟练掌握for.while.do.while循环语句的使用。
3、熟练掌握函数的定义、说明、参数传递及嵌套和递归调用方法。
4、熟练掌握一维数组、二维数组、字符数组的定义、说明和使用方法。
熟练掌握结构体和指针的综合应用链表的操作二、实习地点北京交通干部管理学院计算机系机房十三号.三、实习成果熟练掌握TC集成环境的使用方法。
认真编写实习报告和实习总结,描述实习操作和心得体会,总结在这次实习中的业务收获,作出自我评价。
熟练掌握并应用TC程序设计的各个知识点。
掌握结构体和指针的联合使用,学会链表的构造和常用操作方法,认真编写实习日志和实习体会。
并通过各种途径查找所需资料,拓宽视野,培养自学能力。
四、实习心得在短短一周的实习期间使我获取了不少新知识也巩固了许多老知识。
我体会到了老师和同学们的热心帮助,无论面对学习中多大的困难,同学们都会帮助你,老师也会帮助你,大家就像兄弟姐妹一样。
老师安排我们有具有的分工:首先,在计算机机房里同学们积极的对C语言进行巩固与实习,老师热心的讲解同学们提出的问题和实习过程中应该注意的事项和同学们的任何。
老师把我们分为几组,每一组十一个人,并且分配了具体的任务,在我们实习结束后每一组的同学都把自己组里的成果展示给大家一起分享,告诉大家编程的原理、方法等,使同学们既有动手能力,又能提高语言表达能力。
《C语言程序设计》综合实习报告
《C语言程序设计》综合实习报告一、实习目的和任务本次综合实习是为了提高我们的C语言编程能力,培养我们解决实际问题的能力和团队合作精神。
实习的任务是通过编写C语言程序,完成指定的功能,包括字符串操作、数学运算和数组处理等。
二、实习内容和过程1.字符串操作我们首先学习了C语言中字符串的定义和基本操作,包括字符串的输入输出、连接、比较、查找等。
在实习中,我们编写了一个程序,实现了两个字符串的连接功能。
这个程序首先要求用户输入两个字符串,然后调用一个函数将这两个字符串连接起来,并输出结果。
这个实习让我们熟悉了字符串操作的方法,提高了我们对函数的编写和调用的能力。
2.数学运算接下来,我们学习了C语言中的数学运算,包括整数的加减乘除、浮点数的四则运算、取余和取模等。
为了巩固所学知识,我们编写了一个程序,实现了两个整数的相加和相除功能。
这个程序要求用户输入两个整数,然后调用不同的函数实现相应的运算,并输出结果。
这个实习让我们掌握了数学运算符的使用和函数的定义与调用。
3.数组处理最后,我们学习了C语言中的数组处理,包括数组的定义、初始化、访问和排序等。
为了加深理解,我们编写了一个程序,实现了对一个整型数组进行排序的功能。
这个程序首先要求用户输入一个整型数组,然后调用一个函数对数组进行排序,并输出结果。
这个实习让我们熟悉了数组的基本操作和函数的嵌套调用。
三、实习结果和总结通过本次综合实习,我们的C语言编程能力得到了提升。
我们掌握了字符串操作、数学运算和数组处理的基本方法和技巧,加深了对C语言的理解和应用。
我们学会了合理运用不同的函数,提高了编程效率和代码的可读性。
同时,我们也培养了团队合作精神,通过互相帮助和讨论,解决了实际问题。
在实习过程中,我们遇到了一些困难和挑战,但通过不断努力和坚持,最终取得了满意的成果。
通过这次实习,我们对C语言的学习充满了信心,相信在以后的学习和工作中,我们能够更好地运用C语言解决实际问题。
C语言实验报告《综合实验》(完整版)
报告编号:YT-FS-1748-56C语言实验报告《综合实验》(完整版)After Completing The T ask According To The Original Plan, A Report Will Be Formed T o Reflect The Basic Situation Encountered, Reveal The Existing Problems And Put Forward Future Ideas.互惠互利共同繁荣Mutual Benefit And Common ProsperityC语言实验报告《综合实验》(完整版)备注:该报告书文本主要按照原定计划完成任务后形成报告,并反映遇到的基本情况、实际取得的成功和过程中取得的经验教训、揭露存在的问题以及提出今后设想。
文档可根据实际情况进行修改和使用。
学号:____ 姓名:____ 班级:____ 日期:____ 指导教师:____ 成绩:____实验六综合实验一、实验目的1、掌握C语言中的变量、数组、函数、指针、结构体等主要知识点。
2、掌握C程序的结构化程序设计方法,能使用C 语言开发简单的应用程序。
3、掌握C程序的运行、调试方法等。
二、实验内容编写一个学生信息排序程序。
要求:1、程序运行时可输入n个学生的信息和成绩(n预先定义)。
2、学生信息包括:学号、英文姓名、年龄;学生成绩包括:语文、数学、计算机。
3、给出一个排序选择列表,能够按照上述所列信息(学号、姓名、年龄、语文、数学、计算机)中的至少一个字段进行排序,并显示其结果。
1、使用函数方法定义各个模块。
三、实验步骤与过程物理实验报告·化学实验报告·生物实验报告·实验报告格式·实验报告模板四、程序调试记录这里填写您企业或者单位的信息Fill In The Information Of Your Enterprise Or Unit Here。
c语言综合性实验总结
c语言综合性实验总结
在C语言综合性实验中,我学到了很多关于C语言编程的知识和技巧。
这个实验要求我们设计和实现一个完整的C语言程序,包括了输入、输出、控制结构、函数调用等多个方面。
首先,在这个实验中,我学会了如何使用C语言的输入输出函数。
我使用了scanf函数来读取用户的输入,并且使用了printf函数来输出结果。
通过这些函数,我可以与用户进行交互,获取输入数据并且将结果输出。
其次,在实验中,我学会了如何使用C语言的控制结构。
在我的程序中,我使用了if 语句来进行条件判断,根据不同的情况执行不同的代码。
我还使用了循环结构,如while循环和for循环,用来实现重复执行某个代码块的功能。
掌握了这些控制结构,我可以更灵活地控制程序的流程。
另外,C语言的函数调用也是这个实验中的关键。
我自己设计了多个函数来实现不同的功能,然后在主函数中进行调用。
通过函数的模块化设计,我可以将程序分割成多个小部分,每个部分负责完成一个具体的任务,使得整个程序结构清晰,易于阅读和修改。
最后,在完成这个实验的过程中,我还锻炼了自己的问题解决能力和编程能力。
在遇到问题时,我学会了如何查找相关的资料和文档,如何分析和理解他人的代码,以及如何进行调试和测试。
通过不断地尝试和思考,我最终解决了一些困难和挑战。
总的来说,C语言综合性实验是我在学习C语言过程中的一个重要里程碑。
通过这个实验,我不仅学会了很多有关C语言的知识和技巧,还提高了自己的问题解决能力和编程能力。
这对我以后的学习和工作都有很大的帮助。
C语言实验报告总结(共6篇)
c语言上机实验心得在科技高度发展的今天,计算机在人们之中的作用越来越突出。
而c语言作为一种计算机的语言,学习它将有助于我们更好的了解计算机,与计算机进行交流,因此,我们一定要学好c语言,这对我们以后的发展是十分重要的。
说到这,上机实验当然就是一个必不可少的环节了,c语言灵活、简洁的特点,只有通过编程实践才能真正了解,真正说懂。
为了更好地学习语法规定、掌握程序设计方法、提高程序开发能力,我们必须实际上机、编写程序。
通过实验我也发现了自己不少的问题,这都是只看书上的程序而没有自己亲身上机编写程序而无法得知的,假如我们只因看熟书上的程序就以为自己已经掌握了c语言那就大错特错了。
我主要存在以下的这些缺点:1、学习耐心与细心不足,如scanf(“%d”,&n);中的“&”有时候会忘了。
而在最后输出时又错写成printf(“%d”,&n);从而错误得输出了地址而不是我原来想要的答案。
2、编程思想不够发散,看着题目有时想不出解答的方法,更不用说编写程序来解题了。
3、4、基本功不够,有些函数的表达不太精通,需要看书来核实,以致耗时较多。
知识不够广,有些内容没有学好,不能要用到时及时反映出来,认识程度不够深刻。
5、6、有时候不够精简,有一点用处不大或者说没有也可以的文字存在。
英语水平较差,对错误的地方虽然电脑有说,但由于是英文,理解上还是存在一点问题。
为了能更好地学好c语言,在今后学习中我要更多的动脑,综合运用所学,多看相关东西,多上机练习,提高电脑水平,增强自学能力,把已会的东西掌握好。
实验中我深刻意识到完成程序的编写,决不意味着万事大吉。
认为万无一失的程序,实际上机运行时可能会出现很多意想不到的问题。
有时编译程序检测出一大堆错误,有时程序能够顺利运行,但是运行结果并不是你预期中想要的。
因为开发环境所提供的编译系统无法发现程序逻辑错误,或者是你原来所设计时的理论错误,这就只能靠自己的上机经验来分析判断错误的所在了。
C语言实验报告《综合实验》.doc
C语言实验报告《综合实验》学号:__________ 姓名:__________ 班级:__________ 日期:__________指导教师:__________ 成绩:__________实验六综合实验一、实验目的1、掌握C语言中的变量、数组、函数、指针、结构体等主要知识点。
2、掌握C程序的结构化程序设计方法,能使用C语言开发简单的应用程序。
3、掌握C程序的运行、调试方法等。
二、实验内容编写一个学生信息排序程序。
要求:1、程序运行时可输入n个学生的信息和成绩(n预先定义)。
2、学生信息包括:学号、英文姓名、年龄;学生成绩包括:语文、数学、计算机。
3、给出一个排序选择列表,能够按照上述所列信息(学号、姓名、年龄、语文、数学、计算机)中的至少一个字段进行排序,并显示其结果。
1、使用函数方法定义各个模块。
三、实验步骤与过程物理实验报告·化学实验报告·生物实验报告·实验报告格式·实验报告模板四、程序调试记录语言这个工具解决实际问题,又必须掌握它。
通过多次上机练习,对于语法知识有了感性的认识,加深对它的理解,在理解的基础上就会自然而然地掌握c语言的语法规定。
对于一些内容自己认为在课堂上听懂了,但上机实践中会发现原来理解的偏差,这是由于大部分学生是初次接触程序设计,缺乏程序设计的实践所致。
学习c语言不能停留在学习它的语法规则,而是利用学到的知识编写c语言程序,解决实际问题。
即把c语言作为工具,描述解决实际问题的步骤,由计算机帮助我们解题。
只有通过上机才能检验自己是否掌握c语言、自己编写的程序是否能够正确地解题。
通过上机实验来验证自己编制的程序是否正确,恐怕是大多数同学在完成老师作业时的心态。
但是在程序设计领域里这是一定要克服的传统的、错误的想法。
因为在这种思想支配下,可能你会想办法去掩盖程序中的错误,而不是尽可能多地发现程序中存在的问题。
自己编好程序上机调试运行时,可能有很多你想不到的情况发生,通过解决这些问题,可以逐步提高自己对c 语言的理解和程序开发能力。
《C语言程序设计》综合性实验报告撰写格式
报告撰写格式说明综合性实验完成以后,要求写出实验报告,并将报告电子版上交。
具体要求如下:一.使用A4页面,页面设置采用WORD默认设置。
二.正文使用宋体5号字,一级标题宋体4号字加粗,二级标题宋体小4号字粗,三级及更小标题用宋体5号字加粗,标题一律左对齐。
如:1 一级标题(题目)1.1 二级标题1.1.1 三级标题正文三.论文包括:(1)封面(正确、完整填写封面信息)(见附件)(2)正文(A4纸10页~15页)(3)附录:源代码清单四.论文正文部分应该包括以下部分:题目(一级标题)1. 题目及题目分析(明确陈述说明实验任务,强调的是要做什么)(二级标题)1.1 问题描述(三级标题)1.2功能分析2. 设计思路1.1总体结构设计1.2各个功能模块详细设计及功能模块之间关系设计(包括功能结构图等)1.3 数据结构的设计(文件等)1.4 界面设计其他内容3. 编程实现主要功能模块的流程图及代码段片段。
注意:一定不要只是将全部代码贴上就完了。
4. 运行测试模块测试:测试各模块的测试系统测试:系统功能的完整测试说明:测试步骤为:<1>设计测试用例:包括输入数据,预期结果。
<2>实际运行程序得到:运行结果<3>分析预期结果与运行结果的异同得到测试结论。
运行界面选取主要界面的截图和说明。
5. 总结体会每位同学单独写本次综合性实验的总结和体会。
6. 参考文献附录:代码清单(源程序清单和执行结果:清单中应有足够的注释)注意:若发现抄袭,均判为0分。
c语言实验报告总结(范本)
c语言实验报告总结c语言实验报告总结篇一:C语言上机实验心得C语言上机实验心得在科技高度发展的今天,计算机在人们之中的作用越来越突出。
而C语言作为一种计算机的语言,学习它将有助于我们更好的了解计算机,与计算机进行交流,因此,我们一定要学好C语言,这对我们以后的发展是十分重要的。
说到这,上机实验当然就是一个必不可少的环节了,C语言灵活、简洁的特点,只有通过编程实践才能真正了解,真正说懂。
为了更好地学习语法规定、掌握程序设计方法、提高程序开发能力,我们必须实际上机、编写程序。
通过实验我也发现了自己不少的问题,这都是只看书上的程序而没有自己亲身上机编写程序而无法得知的,假如我们只因看熟书上的程序就以为自己已经掌握了C语言那就大错特错了。
我主要存在以下的这些缺点:1、学习耐心与细心不足,如scanf(“%d”, n);中的“”有时候会忘了。
而在最后输出时又错写成printf(“%d”, 从而错误得输出了地址而不是我原来想要的答案。
2、编程思想不够发散,看着题目有时想不出解答的方法,更不用说编写程序来解题了。
3、4、基本功不够,有些函数的表达不太精通,需要看书来核实,以致耗时较多。
知识不够广,有些内容没有学好,不能要用到时及时反映出来,认识程度不够深刻。
5、6、有时候不够精简,有一点用处不大或者说没有也可以的文字存在。
英语水平较差,对错误的地方虽然电脑有说,但由于是英文,理解上还是存在一点问题。
为了能更好地学好C语言,在今后学习中我要更多的动脑,综合运用所学,多看相关东西,多上机练习,提高电脑水平,增强自学能力,把已会的东西掌握好。
实验中我深刻意识到完成程序的编写,决不意味着万事大吉。
认为万无一失的程序,实际上机运行时可能会出现很多意想不到的问题。
有时编译程序检测出一大堆错误,有时程序能够顺利运行,但是运行结果并不是你预期中想要的。
c语言实验报告实验
c语言实验报告实验C 语言实验报告实验一、实验目的本次 C 语言实验的主要目的是通过实际编程操作,加深对 C 语言基本语法、数据类型、控制结构、函数等知识的理解和运用,提高编程能力和解决实际问题的能力。
二、实验环境操作系统:Windows 10编译器:DevC++ 511三、实验内容(一)基本数据类型与运算1、定义不同类型的变量,如整型(int)、浮点型(float、double)、字符型(char)等,并进行赋值和基本运算。
2、观察不同数据类型在内存中的存储方式和取值范围。
(二)控制结构1、编写使用 ifelse 语句实现条件判断的程序,根据输入的数值输出不同的结果。
2、运用 for 循环和 while 循环结构,实现计算指定范围内的整数和、平均值等。
(三)数组与字符串1、定义数组并进行初始化,实现数组元素的遍历和操作。
2、处理字符串的输入、输出和基本操作,如字符串的连接、比较等。
(四)函数1、定义和调用自定义函数,实现特定功能,如计算阶乘、判断素数等。
2、理解函数的参数传递方式(值传递和地址传递)。
四、实验步骤及代码实现(一)基本数据类型与运算```cinclude <stdioh>int main(){int num1 = 10;float num2 = 314;char ch ='A';printf("整型变量 num1 的值为:%d\n", num1);printf("浮点型变量 num2 的值为:%f\n", num2);printf("字符型变量 ch 的值为:%c\n", ch);int sum = num1 +(int)num2;printf("num1 和num2 的和(强制转换为整型)为:%d\n",sum);return 0;}```(二)控制结构1、 ifelse 语句```cinclude <stdioh>int main(){int num = 5;if (num > 10) {printf("数字大于 10\n");} else {printf("数字小于或等于 10\n");}return 0;}```2、 for 循环```cinclude <stdioh>int main(){int sum = 0;for (int i = 1; i <= 10; i++){sum += i;}printf("1 到 10 的整数和为:%d\n", sum);return 0;}```3、 while 循环```cinclude <stdioh>int main(){int num = 1;int product = 1;while (num <= 5) {product = num;num++;}printf("1 到 5 的乘积为:%d\n", product);return 0;}```(三)数组与字符串1、数组```cinclude <stdioh>int main(){int arr ={1, 2, 3, 4, 5};for (int i = 0; i < 5; i++){printf("数组元素 arr%d 的值为:%d\n", i, arri);}return 0;}```2、字符串```cinclude <stdioh>include <stringh>int main(){char str1 ="Hello, ";char str2 ="World!";char str320;strcpy(str3, str1);strcat(str3, str2);printf("连接后的字符串为:%s\n", str3);int result = strcmp(str1, str2);if (result == 0) {printf("两个字符串相等\n");} else if (result < 0) {printf("str1 小于 str2\n");} else {printf("str1 大于 str2\n");}return 0;}```(四)函数1、计算阶乘```cinclude <stdioh>int factorial(int n) {if (n == 0 || n == 1) {return 1;} else {return n factorial(n 1);}}int main(){int num = 5;int fact = factorial(num);printf("%d 的阶乘为:%d\n", num, fact);return 0;}```2、判断素数```cinclude <stdioh>int isPrime(int n) {if (n <= 1) {}for (int i = 2; i i <= n; i++){if (n % i == 0) {return 0;}}return 1;}int main(){int num = 7;if (isPrime(num)){printf("%d 是素数\n", num);} else {printf("%d 不是素数\n", num);}return 0;}五、实验结果与分析(一)基本数据类型与运算程序运行结果符合预期,不同数据类型的变量能够正确存储和运算,对浮点型数据的强制类型转换也能得到正确的结果。
最新《C语言程序设计》综合性实验实验报告
最新《C语言程序设计》综合性实验实验报告实验目的:1. 巩固和加深对C语言程序设计基础知识的理解。
2. 掌握C语言的基本编程技巧和程序调试方法。
3. 提高解决实际问题的编程能力,培养综合运用C语言进行程序设计的能力。
实验内容:1. 实现一个基本的学生信息管理系统,包括学生信息的录入、查询、修改和删除功能。
2. 设计并编写一个简单的文本编辑器,支持文本的增删改查操作。
3. 开发一个计算器程序,能够进行基本的四则运算以及复杂运算如指数、开方等。
4. 利用C语言的文件操作功能,实现文件的读写操作,并对文件内容进行处理。
实验环境:- 操作系统:Windows 10- 编程工具:Code::Blocks IDE- 编译器:GCC 9.3.0实验步骤:1. 学生信息管理系统:- 设计学生信息的数据结构,包括学号、姓名、年龄、成绩等。
- 使用数组或链表存储学生信息。
- 实现用户界面,提供简单的文本菜单供用户选择操作。
- 对学生信息进行增删改查的函数实现。
- 测试程序,确保所有功能正常运行。
2. 简单文本编辑器:- 设计文本编辑器的基本功能,如打开文件、保存文件、文本输入输出等。
- 实现文本的插入、删除、查找和替换功能。
- 提供友好的用户界面,支持命令行操作。
- 对程序进行单元测试,确保文本编辑的准确性和稳定性。
3. 计算器程序:- 设计计算器的用户界面,支持用户输入运算表达式。
- 实现基本的四则运算功能。
- 扩展支持指数、开方等复杂运算。
- 对计算器进行测试,验证计算结果的准确性。
4. 文件处理程序:- 实现文件的打开、读取、写入和关闭功能。
- 设计文件内容处理功能,如统计文件中的单词数量、查找特定字符串等。
- 编写用户友好的命令行界面,方便用户操作。
- 对文件处理程序进行全面测试,确保文件操作的安全性和可靠性。
实验结果:通过本次综合性实验,成功实现了学生信息管理系统、文本编辑器、计算器和文件处理程序。
所有程序均通过了功能测试和性能测试,满足了实验的基本要求。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
C语言综合性设计实验报告1.实验题目建立一个简单的会员卡储值积分管理系统。
该系统的主要功能是:会员卡管理功能和会员卡储值积分管理。
会员卡管理功能:(1)根据身份证办理会员卡,一张身份证只能办理一张会员卡。
(2)根据需要可以注销、挂失、冻结会员卡或修改会员卡密码以及积分和消费金额查询。
会员基本信息包括:会员身份证号、卡号、密码、积分、消费金额、级别。
会员卡储值积分管理:(1)根据会员卡级别设置折扣率,根据折扣率自动打折计算消费金额。
(2)根据消费金额计算积分,积分累计达到一定标准后换购商品。
2.设计分工组员组员组员:组员在本系统开发中,小组各成员的分工如下:会员的信息存储数据结构和各个子函数的名称及实验报告的书写由全体成员统一制定;主函数main,主控程序模块call函数,系统退出函数,各函数名称及用到的变量名称的规定由胡丽萍统一负责。
会员管理总函数,会员积分总函数,会员信息查询函数及信息内容输出函数由陈建飞负责。
会员信息冻结函数,挂失函数,注销函数及内部返回到主菜单的返回函数由郭娟如负责。
密码设置函数,查询时检查函数,增加新会员函数,修改密码函数统一由郭霞负责。
输入级别函数,输入消费函数,查询积分函数,查询折扣率函数统一交由胡桂芳负责。
3.问题概述要实现这个会员积分管理系统,要遇到的问题如下:①. 首先要有一个主函数来负责对子函数的调用。
②. 进行新增一个会员时的增加操作③. 对身份证号码的判定操作及密码的设置及判定操作④. 输出会员信息时对各部分的总体把握⑤. 修改密码时覆盖其原有的密码⑥. 会员级别及消费来查询折扣率和积分的操作4.问题分析首先该问题分为两个大块,一个是会员卡管理功能,另一个是会员积分管理功能。
针对会员卡管理功能,首先应具备7项功能,新会员的录入,查询会员的信息,会员的挂失操作,会员的冻结操作,修改密码的操作,注销会员的操作,以及返回上一层目录的操作。
在没有一个会员的时候,如果用户进行了查询及注销等其他在有用户基础上才应该进行的操作,也应该给出相应的提示,来警示用户应该正确的操作。
要实现新会员的增加,首先应设置一个会员的结构体数据结构来存储每个会员的信息,以防会员之间的信息混淆,每个会员的信息包含身份证号码的存储数组,密码的存储数组,冻结的存储,挂失的存储,消费额的存储,级别的存储,积分的存储这些内容,在增加时对于身份证号码的判定,输入错误时应该采取的措施,新会员增加时密码的设置,对于密码位数的要求以及出现不符合要求应该采取的相应措施,以及再次密码的确认。
实现会员信息输出时要进行身份证号码的识别,密码的确认,然后按照一定的格式给出会员信息存储的内容。
在进行冻结以及后面的相应操作时也都是首先进行身份的识别,密码的确认,通过后再进行相应的操作。
进行密码修改的时候,首先要进行身份的识别,进行旧密码的确认,然后才提示输入新密码,并再次进行新密码的确认。
新密码要覆盖旧密码,下次进行其他操作时要实现新密码的置换。
在进行注销用户操作时,要删除该用户,在进行下一次操作时,要做出相应的提示该用户已删除。
返回上一层菜单可以使用户返回到上一层的菜单,该功能较容易实现。
在进行积分查询时首先要消费额的录入来验证该功能的实现。
在进行折扣率查询时首先要级别的录入来验证该功能。
5.功能模块描述及功能模块图本系统包含以下函数:①. 系统主函数函数名 void main()②. 主控模板call函数函数名 void call()③. 系统退出函数函数名 int tuichu()④. 会员管理总函数函数名 int guanli()⑤. 会员积分总函数函数名 int jifen()⑥. 会员信息查询函数函数名 int chaxun()⑦. 信息输出函数函数名 int shuchu(int aa)⑧. 冻结函数函数名 int dongjie()⑨. 挂失函数函数名 int guashi()⑩. 注销函数函数名 int zhuxiao()⑪. 返回函数函数名 int fanhui()⑫. 密码设置函数函数名 int mimashezhi()⑬. 检查函数函数名 int jiancha(int aaa)⑭. 增加新会员函数函数名 int zengjia()⑮. 修改密码函数函数名 int xiugaimima()⑯. 输入级别函数函数名 int shurujibie()⑰. 输入消费额函数函数名 int shuruxiaofei()⑱. 查询积分函数函数名 int chaxunjifen()⑲. 查询折扣率函数函数名 int zhekoulv()各模板的N-S图如下:1系统主函数2主控模板call函数3. 系统退出函数4.会员管理函数5.会员积分总函数6.会员信息查询函数7.信息输出函数8.冻结函数9.挂失函数10.注销函数11.返回函数12.密码设置函数13.检查函数14.增加新会员函数15.修改密码函数16.输入级别函数啊17.输入消费函数18.查询积分19.查询折扣率函数6.源程序清单详细代码如下:开发者:胡丽萍#include<stdio.h>char a[25],b[10],c[6];int shenlen,i,zonglen,zl,mimalen,gua,ab,bc,j,m,n,x,y; //用到的变量名称struct abc //会员信息存储结构{char shen[18];int guashi;int dongjie;char mima[6];int jifen;int xiaofei;int jibie;}zong[300];main() //主函数main(){printf("会员卡储值积分管理系统\n");call();}void call() //主控程序模块call函数{fflush(stdin);printf("\n");printf("请按照提示进行操作\n");printf("1.会员卡管理\n");printf("2.会员卡储值积分管理\n");printf("3.退出系统\n");printf("请输入编号:");scanf("%d",&ab);switch(ab){case 1:guanli();case 2:jifen();case 3:tuichu();}}int tuichu() //退出系统函数{exit(0);return 0;}开发者:陈建飞int guanli() //会员信息管理函数{fflush(stdin);printf("\n");printf("请按照提示进行操作\n");printf("1.申请会员卡\n");printf("2.查询会员信息\n");printf("3.申请挂失\n");printf("4.申请冻结\n");printf("5.重置密码\n");printf("6.申请注销\n");printf("7.返回上一级\n");printf("请输入编号:");scanf("%d",&ab);switch(ab){case 1:zengjia();case 2:chaxun();case 3:guashi();case 4:dongjie();case 5:xiugaimima();case 6:zhuxiao();case 7:fanhui();}return 0;}int jifen() //会员积分函数{fflush(stdin);printf("\n");printf("请按照提示进行操作\n\n");printf("请先设置用户的消费额和级别进行测试,消费额为0到10000,级别为0到3\n\n");printf("1.根据用户输入消费额\n");printf("2.根据用户输入级别.\n");printf("3.查询折扣率\n");printf("4.查询积分\n");printf("5.返回上一级\n");printf("请输入编号:");scanf("%d",&ab);switch(ab){case 1:shuruxiaofei();case 2:shurujibie();case 3:zhekoulv();case 4:chaxunjifen();case 5:fanhui();}return 0;}int chaxun() //查询信息函数printf("\n");fflush(stdin);if(zonglen == 0){printf("\n还未有用户注册\n");goto dom;}top:printf("请输入要查询的身份证号码:");fflush(stdin);gets(a);shenlen = strlen(a);if(shenlen != 18){printf("\n您输入的号码有误,");goto top;}for(i=0;i<18;i++){if((a[i] < 48) || (a[i] > 57)){printf("\n您输入的号码有误,");goto top;}}a[18] = '\0';for(i=0;i<zonglen;i++){m = 0;for(j=0;j<18;j++){if(zong[i].shen[j] == a[j])m = m+1;}if(m == 18){bc = i;jiancha(bc);shuchu(bc);goto dom;}if(i == (zonglen-1) && (m!=18)){printf("\n您输入的用户不存在\n\n");goto top;}}dom:printf("\n");return (guanli());int shuchu(int aa) //信息输出函数{int ef;ef = aa;printf("\n");printf(" 身份证号挂失冻结积分消费额级别\n"); for(i = 0;i<18;i++){printf("%c",zong[aa].shen[i]);}if(zong[aa].guashi == 0) printf(" 否 ");else printf(" 是 ");if(zong[aa].dongjie == 0) printf(" 否 ");else printf(" 是 ");printf(" %d ",zong[aa].jifen);printf(" %d ",zong[aa].xiaofei);printf(" %d ",zong[aa].jibie);return 0;}开发者:郭娟如int dongjie() //会员信息冻结函数{printf("\n");fflush(stdin);if(zonglen == 0){printf("\n还未有用户注册\n");goto dom;}top:printf("请输入要冻结的身份证号码:");fflush(stdin);gets(a);shenlen = strlen(a);if(shenlen != 18){printf("\n您输入的号码有误,");goto top;}for(i=0;i<18;i++){if((a[i] < 48) || (a[i] > 57)){printf("\n您输入的号码有误,");goto top;}}a[18] = '\0';for(i=0;i<zonglen;i++){m = 0;for(j=0;j<18;j++){if(zong[i].shen[j] == a[j])m = m+1;}if(m == 18){bc = i;jiancha(bc);zong[bc].dongjie = 1;goto domaa;}if(i == (zonglen-1) && (m!=18)){printf("\n您输入的用户不存在\n\n");goto top;}}domaa:printf("冻结成功,请进行其他操作"); dom:printf("\n");return (guanli());}int guashi() //会员信息挂失函数{printf("\n");fflush(stdin);if(zonglen == 0){printf("\n还未有用户注册\n");goto dom;}top:printf("请输入要挂失的身份证号码:");fflush(stdin);gets(a);shenlen = strlen(a);if(shenlen != 18){printf("\n您输入的号码有误,");goto top;}for(i=0;i<18;i++)if((a[i] < 48) || (a[i] > 57)){printf("\n您输入的号码有误,");goto top;}}a[18] = '\0';for(i=0;i<zonglen;i++){m = 0;for(j=0;j<18;j++){if(zong[i].shen[j] == a[j])m = m+1;}if(m == 18){bc = i;jiancha(bc);zong[bc].guashi = 1;goto domaa;}if(i == (zonglen-1) && (m!=18)){printf("\n您输入的用户不存在\n\n");goto top;}}domaa:printf("挂失成功,请进行其他操作"); dom:printf("\n");return (guanli());}int zhuxiao() //会员注销函数{printf("\n");fflush(stdin);if(zonglen == 0){printf("\n还未有用户注册\n");goto dom;}top:printf("请输入要查询的身份证号码:");fflush(stdin);gets(a);shenlen = strlen(a);if(shenlen != 18)printf("\n您输入的号码有误,");goto top;}for(i=0;i<18;i++){if((a[i] < 48) || (a[i] > 57)){printf("\n您输入的号码有误,");goto top;}}a[18] = '\0';for(i=0;i<zonglen;i++){m = 0;for(j=0;j<18;j++){if(zong[i].shen[j] == a[j])m = m+1;}if(m == 18){bc = i;jiancha(bc);for(x=bc;x<zonglen;x++){for(y=0;y<18;y++){zong[x].shen[y] = zong[x+1].shen[y];}for(y=0;y<6;y++){zong[x].mima[y] = zong[x+1].mima[y];}zong[x].dongjie = zong[x+1].dongjie;zong[x].guashi = zong[x+1].guashi;zong[x].jibie = zong[x+1].jibie;zong[x].jifen = zong[x+1].jifen;zong[x].xiaofei = zong[x+1].xiaofei;}zonglen = zonglen -1;goto domaa;}if(i == (zonglen-1) && (m!=18)){printf("\n您输入的用户不存在\n\n");goto top;}}domaa:printf("\n注销成功,请进行其他操作\n"); dom:printf("\n");return (guanli());}int fanhui() //系统内返回上一层菜单函数{return (call());}开发者:郭霞int mimashezhi() //密码设置函数{printf("\n");top:fflush(stdin);printf("请设置密码(6位密码):");gets(b);mimalen = strlen(b);if(mimalen != 6){printf("\n您输入的密码不符合要求,");goto top;}abc:printf("\n");printf("请再次输入密码:");gets(c);for (i=0;i<6;i++){if(c[i] != b[i]){printf("您再次输入的密码有误,");goto abc;}}c[6] = '\0';for(i=0;i<7;i++){zong[zonglen-1].mima[i] = c[i];}return 0;}int jiancha(int aaa) //密码检查函数{printf("\n");top:fflush(stdin);printf("请输入密码(6位密码):");gets(b);mimalen = strlen(b);if(mimalen != 6){printf("\n您输入的密码不符合要求,");goto top;}b[6] = '\0';n = 0;for (i=0;i<6;i++){if(zong[aaa].mima[i] == b[i])n=n+1;}if(n == 6){printf("\n\n密码正确\n");goto dom;}else{printf("\n您输入的密码有误,");goto top;}dom:return 0;}int zengjia() //新增加会员函数{printf("\n");top:fflush(stdin);printf("请输入要申请会员的身份证号码:");gets(a);shenlen = strlen(a);if(shenlen != 18){printf("\n您输入的号码有误,");goto top;}for(i=0;i<18;i++){if((a[i] < 48) || (a[i] > 57)){printf("\n您输入的号码有误,");goto top;}}a[18] = '\0';zonglen = zonglen + 1;for(i=0;i<19;i++){zong[zonglen-1].shen[i] = a[i];}zong[zonglen-1].dongjie = 0;zong[zonglen-1].guashi = 0;zong[zonglen-1].jifen = 0;zong[zonglen-1].xiaofei=0;zong[zonglen-1].jibie = 0;mimashezhi();printf("\n");printf("申请成功\n");return (guanli());}int xiugaimima() //修改密码函数{printf("\n");fflush(stdin);if(zonglen == 0){printf("\n还未有用户注册\n");goto dom;}top:printf("请输入要修改密码的身份证号码:");fflush(stdin);gets(a);shenlen = strlen(a);if(shenlen != 18){printf("\n您输入的号码有误,");goto top;}for(i=0;i<18;i++){if((a[i] < 48) || (a[i] > 57)){printf("\n您输入的号码有误,");goto top;}}a[18] = '\0';for(i=0;i<zonglen;i++){m = 0;for(j=0;j<18;j++){if(zong[i].shen[j] == a[j])m = m+1;}if(m == 18){bc = i;printf("\n");topab:fflush(stdin);printf("请输入旧密码(6位密码):");gets(b);mimalen = strlen(b);if(mimalen != 6){printf("\n您输入的密码不符合要求,");goto topab;}b[6] = '\0';n = 0;for (i=0;i<6;i++){if(zong[bc].mima[i] == b[i])n=n+1;}if(n == 6){printf("\n\n密码正确\n");goto domab;}else{printf("\n您输入的密码有误,");goto topab;}domab:printf("\n");topp:fflush(stdin);printf("请设置新密码(6位密码):");gets(b);mimalen = strlen(b);if(mimalen != 6){printf("\n您输入的密码不符合要求,");goto topp;}abc:printf("\n");printf("请再次输入密码:");gets(c);for (i=0;i<6;i++){if(c[i] != b[i]){printf("您再次输入的密码有误,");goto abc;}}c[6] = '\0';for(i=0;i<7;i++){zong[bc].mima[i] = c[i];}goto domaa;}if(i == (zonglen-1) && (m!=18)){printf("\n您输入的用户不存在\n\n");goto top;}}domaa:printf("\n重置密码成功,请进行其他操作"); dom:printf("\n");return (guanli());}开发者:胡桂芳int shurujibie() //输入级别函数{printf("\n");fflush(stdin);if(zonglen == 0){printf("\n还未有用户注册\n");goto dom;}top:printf("请输入要填写级别的身份证号码:");fflush(stdin);gets(a);shenlen = strlen(a);if(shenlen != 18){printf("\n您输入的号码有误,");goto top;}for(i=0;i<18;i++){if((a[i] < 48) || (a[i] > 57)){printf("\n您输入的号码有误,");goto top;}}a[18] = '\0';for(i=0;i<zonglen;i++){m = 0;for(j=0;j<18;j++){if(zong[i].shen[j] == a[j])m = m+1;}if(m == 18){bc = i;jiancha(bc);printf("\n请输入级别(0到3):");scanf("%d",&x);zong[bc].jibie = x;goto domaa;}if(i == (zonglen-1) && (m!=18)){printf("\n您输入的用户不存在\n\n");goto top;}}domaa:printf("设置成功");dom:printf("\n");return (jifen());}int shuruxiaofei() //输入消费值函数{printf("\n");fflush(stdin);if(zonglen == 0){printf("\n还未有用户注册\n");goto dom;}top:printf("请输入要填写消费额的身份证号码:");fflush(stdin);gets(a);shenlen = strlen(a);if(shenlen != 18){printf("\n您输入的号码有误,");goto top;}for(i=0;i<18;i++){if((a[i] < 48) || (a[i] > 57)){printf("\n您输入的号码有误,");goto top;}}a[18] = '\0';for(i=0;i<zonglen;i++){m = 0;for(j=0;j<18;j++){if(zong[i].shen[j] == a[j])m = m+1;}if(m == 18){bc = i;jiancha(bc);printf("\n请输入消费额(0到10000):");scanf("%d",&x);zong[bc].xiaofei = x;zong[bc].jifen = zong[bc].xiaofei / 50;goto domaa;}if(i == (zonglen-1) && (m!=18)){printf("\n您输入的用户不存在\n\n");goto top;}}domaa:printf("设置成功");dom:printf("\n");return (jifen());}int chaxunjifen() //查询积分函数{printf("\n");fflush(stdin);if(zonglen == 0){printf("\n还未有用户注册\n");goto dom;}top:printf("请输入要查询积分的身份证号码:");fflush(stdin);gets(a);shenlen = strlen(a);if(shenlen != 18){printf("\n您输入的号码有误,");goto top;}for(i=0;i<18;i++){if((a[i] < 48) || (a[i] > 57)){printf("\n您输入的号码有误,");goto top;}}a[18] = '\0';for(i=0;i<zonglen;i++){m = 0;for(j=0;j<18;j++){if(zong[i].shen[j] == a[j])m = m+1;}if(m == 18){bc = i;jiancha(bc);x = zong[bc].xiaofei / 50;printf("\n该用户的积分有%d。