c语言程序设计报告4
- 格式:pdf
- 大小:578.15 KB
- 文档页数:33
电子科技大学计算机学院标准实验报告(实验)课程名称C语言程序设计电子科技大学教务处制表电子科技大学实验报告四学生姓名:学号:指导教师:王瑞锦实验地点:实验日期:年月日一、实验室名称:软件实验室二、实验项目名称:函数的应用及预处理三、实验学时:2四、实验原理:使用Turbo C软件(简称TC),在微型计算机上,对其程序进行编辑、编译、连接与运行。
Turbo C是一个集成环境,它具有方便、直观、易用的界面和丰富的库函数。
通过上机练习掌握在TC环境下编辑、编译、连接、和运行C程序的方法和过程。
五、实验目的1.掌握C语言中定义函数的方法;2.掌握函数传值调用的方法;3.掌握函数传址调用的方法;4.掌握递归函数的设计方法;5.掌握命令行参数的使用方法;6.掌握函数在不同文件中的编译、链接方法。
六、实验内容编程实验,完成以下上机内容,调试运行程序并完成报告1)、教材第七章习题7.4;2)、编写一个实现冒泡法排序的函数,并在主函数中从键盘上输入6个数后进行排序输出;3)、教材第七章习题7.11;4)、教材第七章习题7.15;5)、教材第七章习题7.24;6)、求解汉渃塔(tower of Hanoi)问题。
在一块平板上立有3根立柱,从左到右分别标记为A,B,C。
最初在A柱上放有6个大小不等的圆盘,并且大盘在下面,小盘在上面。
要求将这些盘从A移到C(可以借助B柱)。
条件是:每次只能移动一个盘,并且不允许把大盘放在小盘的上面。
(提示:利用函数的递归调用);七、实验器材(设备、元器件):pc硬件要求:CPU PII 以上,64M 内存,1OOM 硬盘空间即可。
软件要求:DOS3.0以上/Windows98/Me/XP/NT/2000。
八、实验步骤:实验编程与运行结果⑴编写一个求两个整数的最小公倍数的函数,两个整数由键盘输入,用主函数调用这个函数,并输出结果。
程序文件名为7_4.c,源程序清单如下:#include<stdio.h>lcd(int a,int b){int temp,num1,num2;num1=a;num2=b;while(num2!=0){temp=num1%num2;num1=num2;num2=temp;}return(a*b/num1);}main(){int t,x,y;printf("Please input two integers:");scanf("%d,%d",&x,&y);if(x>y){t=x;x=y;y=t;}printf("lcd(%d,%d)=%d\n",x,y,lcd(x,y));}运行结果:⑵编写一个实现冒泡法排序的函数,并在主函数中从键盘上输入6个数后进行排序输出。
C语言程序设计实验报告1.实验目的1.熟练掌握一维数组、二维数组的定义、初始化和输入和输出的方法;2.掌握字符数组和字符串函数的使用;3.掌握与数组有关的常用方法(如查找、排序等)。
2.实验指导1)对任意一个一维整型数组,从中找出数组元素的最大值和最小值并输出。
要求:①数组有10个元素;②使用scanf函数实现数组元素的输入,在输入前给出必要的提示;③输出时,首先输出数组的10个元素,然后输出其最大值和最小值。
2)编写函数cmpStr(char s1[ ],char s2[ ])比较两个字符串s1和s2的大小。
如果s1>s2,返回一个正数;s1=s2,返回0;s1<s2,返回一个负数,在主函数中调用该函数完成字符串的比较操作,并输出返回值。
要求①不允许使用strcmp()函数;②用gets()函数在主函数中输入两个字符串;③实现cmpStr()函数,返回的正数或负数的绝对值应该是进行比较的两个字符串中相应的字符的ASCII码的差值。
3)将三个学生、四门课程的成绩分别存放在4*5数组的前3*4列,计算出每个学生的总成绩存放在该数组的最后一列的对应行上,然后计算出单科成绩的平均分存放在最后的对应列上。
要求:①数组类型定义为实型,成绩由scanf函数从键盘输入;②输出原始成绩(3*4列);③计算每个学生的总成绩以及单科成绩的平均分,并按要求填入到数组中,输出的结果数组(4*5列);④修改程序,采用函数调用的方式实现。
●编写一个input()函数,功能是输入学生的原始成绩;●编写一个compute()函数,功能是计算出每个学生的总成绩和单科成绩的平均分,并将计算结果分别填入4*5矩阵的最后一列和最后一行中;●编写一个output()函数,功能是输出数组元素;●在主函数中定义一个4*5数组,调用上述三个函数,以数组作为函数参数,实现该程序。
3.算法描述流程图(1)流程图如下(2)程序流程图如下(3)程序流程图如下4.原程序(1)程序为#include<stdio.h> main(){int a[10],i,max,min;for (i=0;i<=9;i++){scanf("%d",&a[i]); }max=a[0];min=a[0];for(i=1;i<=9;i++)开始定义子函数comStr() 声明变量z,s1,s2;结束输入单词输出结果{if(a[i]>max)max=a[i];if(a[i]<min)min=a[i];}for(i=0;i<=9;i++){printf("a[%d]=%d\n",i,a[i]);}printf("the maximum value is %d,and the minimum value is %d\n",max,min); }(2)原程序为#include<stdio.h>int cmpStr(char s1[],char s2[]){int i,diff;i=0;while((s1[i]==s2[i])&&(s1[i]!='\0')) i++;if (s1[i]=='\0'&&s2[i]=='\0')diff=0;elsediff=s1[i]-s2[i];return diff;}main(){int z;char s1[100],s2[100];printf("input the first string:");gets(s1);printf("input the second string:");gets(s2);z=cmpStr(s1,s2);printf("the difference between two string is %d\n",z);}(3)#include<stdio.h>input(float stu[4][5]){int i,j;printf("请输入各门课程成绩:");for(i=0;i<3;i++)for(j=0;j<4;j++)scanf("%f",&stu[i][j]);}compute(float stu[4][5]){int i,j;for(i=0;i<4;i++){stu[i][4]=0;stu[i][4]=stu[i][0]+stu[i][1]+stu[i][2]+stu[i][3];for(j=0;j<5;j++){stu[3][j]=0;stu[3][j]=(stu[0][j]+stu[1][j]+stu[2][j])/3;}}}output(float stu[4][5]){int i,j;for(i=0;i<4;i++)for(j=0;j<5;j++){printf("%6.1f ",stu[i][j]);if((j+1)%5==0)printf("\n");}}main(){float a[4][5];input(*a);compute(*a);output(*a);}4.测试数据(1)①测试数据为10 ,454,61,31,34, 71, 58, 68 ,12 ,19.②测试数据2,4,6,7,8,9,4,6,7,3.(2)①测试数据为abc, des.②测试数据为abcd, abcd.③测试数据为hjkl, asdf.(3)测试数据为:85,98, 96,97,85,84,85,86,92,93,87,96。
C语言程序设计实习报告一、实习目的1. 巩固和加深对C语言程序设计的理解。
2. 掌握C语言编程的基本技巧和方法。
3. 提高分析问题、解决问题的能力。
4. 学会将理论知识应用于实际编程中。
二、实习内容XXX语言基础语法练习变量、数据类型、运算符、表达式等基础语法练习。
控制结构(顺序、分支、循环)的实现。
函数的定义和调用方式练习。
2. 模块化程序设计将一个大的程序分解成多个模块,每个模块完成特定的功能。
通过模块间的调用和传递数据来实现整个程序的功能。
3. 文件操作与文件读写文件的打开、关闭、读写操作练习。
文件格式的转换和数据统计处理。
4. 预处理指令与宏定义使用预处理指令进行条件编译和宏定义替换。
练习使用常见的预处理指令如include、define、ifdef等。
5. 结构体、链表与指针结构体的定义和使用。
链表的创建、插入、删除、遍历等操作。
指针的概念和指针运算。
深入理解指针与数组、结构体等数据结构的关系。
6. 位运算与嵌入式系统编程学习位运算符的使用和位段操作的实现。
嵌入式系统的基本概念和编程方法。
7. 综合项目实践参与或独立完成一个综合性C语言程序设计项目。
项目可以包括基于命令行参数的程序设计、基于文件操作的程序设计、基于网络编程的程序设计等。
三、实习过程1. 理论学习:通过教材、网络资源等途径学习C语言的基础知识和编程技巧。
2. 上机实践:在计算机上编写和调试C语言程序,不断巩固所学知识。
3. 问题解决:遇到问题时,通过查阅资料、请教老师或同学等方式解决问题。
4. 团队合作:在小组项目中与他人协作,共同完成任务。
四、实习收获1. 知识技能方面:深入理解了C语言的基本概念和编程技巧,掌握了模块化程序设计和文件操作等常用算法。
2. 解决问题能力方面:学会了如何分析问题、寻找解决方案并通过实践验证解决方案的正确性。
3. 团队协作能力方面:学会了与他人合作,共同完成任务,提高了团队协作能力。
4. 职业素养方面:培养了耐心、细致的工作态度和勇于尝试、敢于创新的探索精神。
(此文档为word格式,下载后您可任意编辑修改!)《C语言程序设计》实验报告2012~2013学年第二学期班级姓名学号指导教师实验一实验项目名称:C程序的运行环境和运行C程序的方法所使用的工具软件及环境:Visual C++6.0一、实验目的:1.了解在Visual C++6.0环境下如何编辑、编译、连接和运行一个C程序;2.通过运行简单的C程序,初步了解C源程序的特点。
二、预习内容:教材《C语言程序设计教程》第1章。
三、实验内容:1.在Visual C++6.0环境下输入并运行下面的程序:#include<stdio.(){printf("This is a C program.\n");return0;}2.在Visual C++6.0环境下输入下面的程序(有语法错误),编译、连接、调试该程序,直至程序无语法错误,然后运行程序,并观察分析运行结果。
#include<stdio.(){int a,b,suma=3;b=4;sun=a+b;print("%d+%d=%d\n",a,b,sum);return0;}四、实验结果:1.运行结果(或截图):2.(1)改正后的源程序:(2)运行结果(或截图):五、思考题:1.一个C程序上机的步骤有哪些?答:2.组成C程序的基本单位是函数,一个函数包括哪几个部分?答:成绩指导教师签名实验二实验项目名称:数据类型、运算符和表达式所使用的工具软件及环境:Visual C++6.0一、实验目的:1.掌握整型、实型与字符型这三种基本类型的概念;2.掌握常量及变量的使用方法;3.掌握基本算术运算符及其表达式的使用方法;4.掌握++、--运算符、赋值运算符及其表达式的使用方法。
二、预习内容:教材《C语言程序设计教程》第2章。
三、实验内容:1.在Visual C++6.0环境下输入下面的程序(有语法错误),编译、连接、调试该程序,直至程序无语法错误。
#include<stdio.(){int2cd=3;floatπ=3.14;char for=′A′;printf("%d,%f,%c\n",2cd,π,for);return0;}2.在Visual C++6.0环境下输入并运行下面的程序,观察分析运行结果。
c语言程序设计实验报告C语言程序设计实验报告引言:C语言是一种广泛应用于计算机科学领域的高级编程语言,其简洁、高效的特性使其成为程序员们的首选。
本实验报告旨在总结和讨论我们在C语言程序设计实验中的学习和实践经验,以及遇到的挑战和解决方法。
一、实验目的本次实验的主要目的是通过编写C语言程序,加深对C语言基本语法和程序设计原理的理解。
实验内容包括变量定义、条件语句、循环语句、函数定义等基本知识点的应用。
二、实验过程1. 变量定义在实验中,我们学习了如何定义不同类型的变量,并掌握了它们的使用方法。
通过实际编写程序,我们发现合理的变量命名和类型选择对程序的可读性和性能有着重要影响。
2. 条件语句条件语句是C语言中常用的控制结构之一,它使得程序可以根据不同的条件来执行不同的代码块。
我们在实验中学习了if语句和switch语句的使用方法,并通过实例程序加深了对它们的理解。
3. 循环语句循环语句可以使程序重复执行某一段代码块,从而简化程序的编写和管理。
我们在实验中学习了for循环、while循环和do-while循环的使用方法,并通过实例程序掌握了它们的灵活运用。
4. 函数定义函数是C语言中组织和重用代码的一种重要方式,通过函数的封装和调用,我们可以提高程序的模块化和可维护性。
在实验中,我们学习了函数的定义和调用方法,并通过编写多个函数协同工作的程序来实践。
三、实验结果与分析通过实验,我们成功编写了多个C语言程序,并得到了相应的运行结果。
我们发现,良好的程序设计和代码组织可以提高程序的可读性和可维护性。
同时,我们也遇到了一些问题,例如变量的作用域、循环的控制条件等,但通过仔细分析和调试,我们最终解决了这些问题。
四、实验心得通过本次实验,我们深入了解了C语言的基本语法和程序设计原理,掌握了一些常用的编程技巧。
实验中的实践让我们更加熟悉了C语言的使用,并培养了我们解决问题的能力。
同时,我们也认识到编程是一项需要不断学习和实践的技能,我们将继续努力提升自己的编程水平。
C语言程序设计实验报告一、引言C语言程序设计是计算机科学与技术专业中的一门基础课程。
通过实验学习,我深入了解了C语言的基本语法和程序设计的思想,掌握了一定的编程能力。
本文将详细介绍我在C语言程序设计实验中所进行的实验项目、实验结果和实验心得。
二、实验项目1. 实验一:C语言程序设计基础在这个实验中,我编写了一个简单的C语言程序,实现了对用户输入的两个整数进行相加并输出结果的功能。
在程序设计中,我正确使用了C语言的基本语法,包括变量定义、输入输出函数的调用等。
2. 实验二:条件语句和循环结构这个实验要求我编写一个C语言程序,实现对用户输入的分数进行等级评定的功能。
根据用户输入的分数,程序将输出相应的等级,如优秀、良好、及格等。
为了实现这个功能,我灵活运用了条件语句和循环结构,使程序具有良好的交互性。
3. 实验三:数组和字符串在这个实验中,我学习了C语言中数组和字符串的使用方法,并编写了一个程序,实现了对一个整数数组的排序功能。
通过实验,我进一步掌握了数组的声明、初始化和遍历等操作,提高了我对C语言程序设计的理解。
4. 实验四:函数和指针实验四要求我编写一个C语言程序,实现对一个数组中的元素求和的功能。
在这个实验中,我了解了函数的定义和调用、指针的基本概念以及函数指针的使用。
通过编写程序,我加深了对函数和指针的理解,并提高了程序的运行效率。
三、实验结果通过以上实验项目的设计与实现,我得到了如下实验结果:1. 实验一的结果是可以正确进行数值相加并输出结果。
2. 实验二的结果是根据输入的分数得到相应的等级评定。
3. 实验三的结果是对输入的整数数组进行排序,并输出排序后的结果。
4. 实验四的结果是对数组中的元素进行求和,并输出求和结果。
四、实验心得通过整个实验过程,我深刻认识到了C语言程序设计的重要性和应用广泛性。
C语言不仅是其他高级编程语言的基础,也是培养程序设计思维和逻辑思维的重要工具。
通过实验,我不仅掌握了C语言的基础知识和编程技巧,还培养了自己解决问题和分析问题的能力。
《C语言程序设计》实验报告(实验1-12)《C语言程序设计》实验报告20XX~20XX学年第二学期班级姓名学号指导教师实验一实验项目名称:C程序的运行环境和运行C程序的方法所使用的工具软件及环境:Visual C++ 一、实验目的:1.了解在Visual C++ 环境下如何xx、编译、连接和运行一个C程序; 2.通过运行简单的C程序,初步了解C 源程序的特点。
二、预习内容:教材《C语言程序设计教程》第1章。
三、实验内容:1. 在Visual C++ 环境下输入并运行下面的程序:#include int main( ) {printf("This is a C program.\\n"); return 0; }2. 在Visual C++ 环境下输入下面的程序(有语法错误),编译、连接、调试该程序,直至程序无语法错误,然后运行程序,并观察分析运行结果。
#include int main( ) {int a,b,sum a=3; b=4; sun=a+b;print(“%d+%d=%d\\n”,a,b,sum); return 0; }四、实验结果:1. 运行结果(或截图):This is a C program.Press any key to continue- 1 -2. (1) 改正后的源程序:#include int main( ) {int a,b,sum; a=3; b=4; sum=a+b;printf(\ return 0; }(2) 运行结果(或截图):3+4=7五、思考题:1. 一个C程序上机的步骤有哪些?答:上级输入与xx源程序—对原程序进行编译–与库函数链接–运行可执行的目标程序。
2. 组成C程序的基本单位是函数,一个函数包括哪几个部分?答:一个函数包括两部分:分别为函数头或函数首部和函数体。
成绩指导教师签名实验二实验项目名称:数据类型、运算符和表达式所使用的工具软件及环境:Visual C++ 一、实验目的:1.掌握整型、实型与字符型这三种基本类型的概念;2.掌握常量及变量的使用方法;3. 掌握基本算术运算符及其表达式的使用方法;4. 掌握++、--运算符、赋值运算符及其表达式的使用方法。
c语言课程设计报告书3篇c语言课程设计报告书1我们学习它,有助于我们更好的了解计算机,与计算机进行交流,因此,c语言的学习对我们尤其重要。
在这个星期里,我们专业的学生在专业老师的带领下进行了c语言程序实践学习。
在这之前,我们已经对c语言这门课程学习了一个学期,对其有了一定的了解,但是也仅仅是停留在了解的范围,对里面的好多东西还是很陌生,的在运用起来的时候还是感到很棘手,毕竟,万事开头难嘛。
由于时间的关系,我们的这次实践课程老师并没有给我们详细的介绍,只是给我们简单的介绍了几个比较重要的实际操作。
包括了程序模块处理。
简单界面程序。
高级界面程序。
程序的添加修改。
用程序做一元线性回归处理以及用c语言程序来画粒度分布图等这几样比较重要的时间操作。
上机实验是学习程序设计语言必不可少的实践环节,特别是c语言灵活、简洁,更需要通过编程的实践来真正掌握它。
对于程序设计语言的学习目的,可以概括为学习语法规定、掌握程序设计方法、提高程序开发能力,这些都必须通过充分的实际上机操作才能完成。
学习c程序设计语言除了课堂讲授以外,必须保证有不少于课堂讲授学时的上机时间。
因为学时所限,课程不能安排过多的上机实验,所以希望学生有效地利用课程上机实验的机会,尽快掌握用c语言开发程序的能力,为今后的继续学习打下一个良好的基础。
为此,我们结合课堂讲授的内容和进度,安排了12次上机实验。
课程上机实验的目的,不仅仅是验证教材和讲课的内容、检查自己所编的程序是否正确,课程安排的上机实验的目的可以概括为如下几个方面:1、加深对课堂讲授内容的理解课堂上要讲授许多关于c语言的.语法规则,听起来十分枯燥无味,也不容易记住,死记硬背是不可取的。
然而要使用c语言这个工具解决实际问题,又必须掌握它。
通过多次上机练习,对于语法知识有了感性的认识,加深对它的理解,在理解的基础上就会自然而然地掌握c语言的语法规定。
对于一些内容自己认为在课堂上听懂了,但上机实践中会发现原来理解的偏差,这是由于大部分学生是初次接触程序设计,缺乏程序设计的实践所致。
第一篇:C语言程序设计上机实验报告黔南民族师范学院C语言程序设计上机实验报告系部:计算机科学系年级:2013 级班级:姓名:学号:实验时间:实验成绩:2013年月日实验三顺序结构程序的设计一实验名称:顺序结构程序的设计二.实验环境:windows XP系统,VC++6.0软件三.实验目的:四.实验内容:五.算法描述流程图六.源程序七.测试数据及运行结果八.实验心得实验成绩评分要求1、原创性发现抄袭或雷同成绩为0分2、正确性程序正确60分3、可读性格式清楚,有注释,变量命名规范20分4、健壮性对特殊测试数据有考虑有测试10分5、效率程序运行效率高10分第二篇:C程序设计上机实验报告10C程序设计实验报告实验名称:指针与数组学时安排:2课时实验类别:上机操作型实验要求:1人1组 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄一、实验目的1. 理解指针、地址和数组间的关系;2. 掌握通过指针操作数组元素的方法;3. 掌握数组名作为参数的编程方式。
二、实验设备介绍软件需求: Visual C++ 6.0或CFree3.5以上版本硬件需求: 对于硬件方面的要求,建议配置是Pentium III 450以上的CPU处理器,64MB以上的内存,200MB的自由硬盘空间、CD-ROM驱动器、能支持24位真彩色的显示卡、彩色显示器、打印机。
三、实验内容1. 定义函数void sort(int a[],int n)amain函数,并在其中调用sort函数。
示例如下:After sorted the array is: -9 -6 1 2 4 52. 输入10个整数存储到数组a,再输入一个整数x,在数组a中查找x,若找到则输出相应的下标,否则显示“Not found!”。
要求定义和调用函数search(int list[], int n, int x),在数组list中查找元素x,若找到则返回相应下标,否则返回-1。
c语言程序设计实训报告一、实训背景本次实训是为了加强学生对C语言程序设计的掌握,提高其编程能力和解决问题的能力。
通过实际操作,学生可以更深入地了解C语言的基础知识和应用技巧。
二、实训目的1. 掌握C语言程序设计的基本语法和数据类型;2. 学会使用流程控制语句编写简单的程序;3. 学会使用数组、函数等数据结构进行程序设计;4. 提高学生解决问题的能力。
三、实训内容1. 基础语法练习:包括变量定义、常量定义、运算符使用等;2. 流程控制语句练习:包括if-else语句、switch-case语句等;3. 数组练习:包括一维数组和二维数组的定义和使用;4. 函数练习:包括函数声明、函数调用以及递归函数等。
四、实训过程1. 基础语法练习:在第一次实验中,我们主要学习了如何定义变量和常量,并进行简单的运算。
我们通过不同类型变量之间进行赋值来熟悉各种数据类型之间的转换规则,同时也学会了如何使用printf()函数输出结果。
2. 流程控制语句练习:在第二次实验中,我们学习了if-else语句和switch-case语句。
我们通过编写简单的程序来熟悉这些流程控制语句的使用方法,同时也学会了如何使用scanf()函数获取用户输入。
3. 数组练习:在第三次实验中,我们学习了如何定义一维数组和二维数组,并进行简单的操作。
我们通过编写一个简单的矩阵转置程序来加深对数组的理解。
4. 函数练习:在第四次实验中,我们学习了如何声明函数、调用函数以及递归函数等。
我们通过编写一个求斐波那契数列的程序来熟悉函数的使用方法,并体会到递归函数的特点和应用场景。
五、实训收获通过这次实训,我对C语言程序设计有了更深入的理解。
我不仅掌握了基本语法和数据类型,还学会了如何使用流程控制语句、数组、函数等数据结构进行程序设计。
同时,在实践过程中,我也提高了自己解决问题的能力。
六、总结C语言作为一门经典而重要的编程语言,在计算机科学领域有着广泛的应用。
c语言程序设计实验报告怎么写C语言程序设计实验报告一、实验目的二、实验环境三、实验内容1. 实验一:C语言基础练习2. 实验二:流程控制语句练习3. 实验三:函数练习4. 实验四:数组和指针练习四、实验过程及结果分析1. 实验一过程及结果分析a. 编写程序代码的步骤及思路b. 程序运行结果及分析2. 实验二过程及结果分析a. 编写程序代码的步骤及思路b. 程序运行结果及分析3. 实验三过程及结果分析a. 编写程序代码的步骤及思路b. 程序运行结果及分析4. 实验四过程及结果分析a. 编写程序代码的步骤及思路b. 程序运行结果及分析五、总结与体会一、实验目的本次实验旨在通过对C语言基础知识的学习,掌握C语言编程技能,提高编程能力。
同时,通过对不同类型题目的练习,培养学生解决问题和思考问题的能力。
二、实验环境本次实验使用的是Visual Studio 2019开发环境,操作系统为Windows 10。
三、实验内容本次实验共分为四个部分,分别是C语言基础练习、流程控制语句练习、函数练习和数组和指针练习。
具体内容如下:1. 实验一:C语言基础练习a. 编写一个程序,输入两个整数,输出它们的和、差、积和商。
b. 编写一个程序,输入一个三位数的整数,将其百位数与个位数交换后输出。
c. 编写一个程序,输入六个整数,按照从小到大的顺序输出。
2. 实验二:流程控制语句练习a. 编写一个程序,输入两个整数a和b,如果a>b则交换它们的值,并输出结果。
b. 编写一个程序,输入三个整数a、b和c,求出其中最大值并输出。
c. 编写一个程序,输入一个字符c,如果它是大写字母,则将其转换成小写字母并输出;如果它是小写字母,则将其转换成大写字母并输出;否则不做处理。
3. 实验三:函数练习a. 编写函数sum(n),计算1到n之间所有整数的和,n由用户输入。
b. 编写函数isprime(n),判断一个整数n是否为素数,n由用户输入。
《C程序设计》实验教学大纲一、适用范围大纲适用信息管理专业本科教学使用。
二、课程名称C程序设计三、学时数与学分总学时:90 总学分:4实验学时:28 实验学分:1四、教学目的和基本要求目的:通过C程序设计实验,培养学生对学习程序设计的兴趣,加深对讲授内容的理解,尤其是通过上机来掌握语法规则,使学生全面了解 C 语言的特点,熟练掌握 C 语言程序设计的基本方法和编程技巧。
基本要求:了解和熟悉C语言程序开发的环境;学会上机调试程序,善于发现程序中的错误,并且能很快地排除这些错误,使程序能正确运行,达到实验知识和理论知识的融会贯通。
上机实验前,学生必须事先根据题目的内容编好程序,然后在实验时输入程序、调试程序、直至运行结果正确为止,上机结束后,应整理出实验报告。
注:带*的实验项目为选做实验项目六、教材、讲义及参考书《C程序设计题解与上机指导》谭浩强主编清华大学出版社七、实验成绩评定办法实验成绩=平时实验表现+实验报告。
实验成绩占总成绩的20%。
实验成绩以等级形式给出,评定等级分优、良、中、及格、不及格五类。
1、平时考核:上机实验前,学生必须事先根据题目的内容编好程序,然后在实验时输入程序、调试程序、直至运行结果正确为止。
在实验中,教师可根据学生编程操作能力、观察和分析及运用知识能力、程序编制正确性以及学生的课堂纪律、实验态度、保持实验室卫生等方面的表现进行综合考核。
2、实验报告:学生实验后应按时完成实验报告。
八、实验教学大纲说明本大纲共安排28学时的实验,其中带*号实验项目为选做实验项目,实际课时为18学时。
实验项目多为设计性实验项目,每个设计性实验项目中都包含数个小的设计性题目,其中带*号的题目为选做题目,有时间和有能力的同学可以选做。
九、实验项目实验一C程序的运行环境和运行一个C程序的方法一、实验目的1.了解Visual C++6.0编译系统的基本操作方法,学会独立使用该系统。
2.了解在该系统上如何编辑、编译、连接和运行一个C程序。
实验报告实验题目:选择结构程序设计实验目的:(1)了解C语言表示逻辑量的方法(以0代表“假”以非0代表“真”)。
(2)学会正确使用逻辑运算算符和逻辑表达式。
(3)熟练掌握if语句的使用(包括if语句的嵌套)。
(4)熟练掌握多分支选择语句——switch语句。
(5)结合程序掌握一些简单的算法。
(6)进一步学习调试程序的方法。
实验内容:本实验要求事先编好解决下面问题的程序,然后上级输入程序并调试运行程序。
(1)有一函数:⎪⎩⎪⎨⎧≥-<≤-<=10113)101(12)1(x x x x x x y 输入x 的值,输出y 相应的值。
用scanf 函数输入x 的值,求y值(第四章第六题) 运行程序,输入x 的值(分别为x<1、101<≤x 、10≥x 这三种情况),检查输出y 值是否正确。
答:1)调试通过的程序清单如下:#include<stdio.h>void main(){ int x,y;printf("请输入X:");scanf("%d",&x);if(x<1)y=x;else if(x<10)y=2*x-1;程序设计基础实验报告――选择结构程序设计else y=3*x-11;printf("y=%d\n",y);}3)调试过程出现的问题说明及处理方法:编译提示信息如下:Compiling...c4_4.cF:\_选择结构程序设计\第四次实验\c4_4.c(10) : error C2059: syntax error : 'bad suffix on number'F:\_选择结构程序设计\第四次实验\c4_4.c(10) : error C2146: syntax error : missing ';' before identifier 'x'F:\_选择结构程序设计\第四次实验\c4_4.c(10) : warning C4552: '-' : operator has no effect; expected operator with side-effect F:\_选择结构程序设计\第四次实验\c4_4.c(11) : error C2181: illegal else without matching ifF:\_选择结构程序设计\第四次实验\c4_4.c(11) : error C2059: syntax error : 'bad suffix on number'作者:花开2011年11月2日F:\_选择结构程序设计\第四次实验\c4_4.c(11) : error C2146: syntax error : missing ';' before identifier 'x'F:\_选择结构程序设计\第四次实验\c4_4.c(11) : warning C4552: '-' : operator has no effect; expected operator with side-effect 执行cl.exe 时出错.c4_4.obj - 1 error(s), 0 warning(s)原因分析:由于习惯在数学上习惯于用2x表示2*x,导致在这里忽略了“*”,以致程序出现严重错误。
第四版C语言实验报告实验4选择程序设计仲恺农业工程学院实验报告纸计算机科学与工程(院)计算机科学与技术专业计111班 1 组 C语言程序设计课学号 201110214113 姓名廖兆伟实验日期 2012-3-29 教师评定实验4 选择结构程序设计一、实验目的一(实验目的(1)了解C语言表示逻辑量的方法(以0代表“假”,以非0代表“真”)。
(2)学会正确使用逻辑运算符和逻辑表达式。
(3)熟练掌握if语句的使用(包括if语句的嵌套)。
(4)熟练掌握多分支选择语句——switch语句。
(5)结合程序掌握一些简单的算法。
(6)进一步学习调试程序的方法。
二、实验内容和步骤程序1写程序,输入x值,输出相应y值程序:#include <stdio.h> int main(){int x,y;scanf("%d",&x);if (x<1){y=x;}else if (x<10){y=2*x-1;}else{y=3*x-11;}printf ("x=%d,y=%d\n",x,y);return 0;结果:}程序2程序:#include <stdio.h> #include <math.h> #define M 1000int main(){int i,k;printf("please input:",M); scanf("%d",&i);while (i>M){printf("warning!\n",M);scanf("%d",&i);}k=sqrt(i);printf("the answer is%d\n",k); return 0;}结果:程序3#include<stdio.h>int main(){float score;char grade;printf("please input student's score:");scanf("%f",&score);while(score>100||score<0){printf("\n is wrong,please input again\n");scanf("%f",&score);}switch((int)(score/10)){case 10:case 9:grade='A';break;case 8:grade='B';break;case 7:grade='C';break;case 6:grade='D';break;case 5:case 4:case 3:case 2:case 1:case 0:grade='E';}printf("score is %5.1f,grade is %c\n",score,grade);return 0;}程序4#include<stdio.h>int main(){int a,b,c,d,e;printf("please input a,b,c,d:");scanf("%d,%d,%d,%d",&a,&b,&c,&d);printf("a=%d,b=%d,c=%d,d=%d\n",a,b,c,d); if(a>b){e=a;a=b;b=e;}if(a>c){e=a;a=c;c=e;}if(a>d){e=d;a=d;d=e;}if(b>c){e=b;b=c;c=e;}if(b>d){e=b;b=d;d=e;}if(c>d){e=c;c=d;d=e;}printf("The result is :\n"); printf("%d %d %d %d \n",a,b,c,d); return 0;}结果:总结:本次实验编程4个程序,计104行,我感觉自己在编程方面的熟练度提高了,一些比如忘打分号之类的基本问题明显减少,很有收获。
C语言程序设计第4版C语言程序设计领域是计算机科学中的一个重要领域,而《C语言程序设计第4版》是一本被广泛使用的教材,它可以帮助读者全面理解和掌握C语言编程的基本技术和应用。
本文将围绕《C语言程序设计第4版》展开讨论,主要探讨其重要性、内容概述以及对读者的价值等方面。
【引言】随着计算机技术的快速发展,C语言作为一种通用的编程语言,被广泛应用于软件开发、系统编程等方面。
而了解和掌握C语言的基本技术和应用对于计算机科学专业的学生和从事相关工作的人员来说至关重要。
《C语言程序设计第4版》就是以帮助读者快速学习和掌握C 语言编程技术为目标而编写的一本优秀教材。
【重要性】C语言作为一种中级编程语言,具有更接近硬件的特点。
掌握C语言编程技术不仅可以帮助读者深入理解计算机原理和工作机制,还能够为其后续学习其他高级编程语言打下扎实的基础。
因此,C语言的重要性无法低估。
【内容概述】《C语言程序设计第4版》全面系统地介绍了C语言的基本概念、语法、数据类型、运算符、流程控制、函数、数组、指针、结构体、文件操作等内容。
无论是初学者还是有一定编程基础的人员,都可以通过阅读本书掌握C语言编程的各个方面。
此外,该书还通过大量的案例和实例,帮助读者加深理解,并培养实际编程能力。
在书中,作者以通俗易懂的方式阐述了C语言的重要概念,为读者提供了良好的学习环境。
此外,书中还通过丰富的习题和实践项目,帮助读者巩固所学知识,并将其应用到实际问题中。
通过动手实践,读者可以更好地理解C语言的应用场景和编程技术。
【对读者的价值】《C语言程序设计第4版》对读者的价值不仅仅在于帮助其学习和掌握C语言编程技术,更重要的是通过编程案例和实践项目的引导,培养读者的问题分析和解决能力。
在解决实际问题的过程中,读者可以提高思考和创新能力,培养良好的编程思维。
这些能力对于计算机科学专业的学生和从事相关工作的人员来说都是十分重要的。
此外,《C语言程序设计第4版》还提供了大量的编程范例和注释,使读者能够更好地理解代码的含义和运行过程。
宁夏师范学院数学与计算机科学学院《高级语言程序设计》实验报告实验序号:4实验项目名称:算法与判断学号姓名专业、班级12级数应(2)班实验地点指导教师郑利珍时间一、实验目的及要求1、学会使用传统流程图、N-S图、伪代码对算法进行描述。
2、掌握逻辑表达式。
3、掌握关系表达式二、实验设备(环境)及要求硬件:PC(PII以上,128M以上内存);软件:Windows XP操作系统、Visual C++ 6.0。
三、实验内容、步骤及结果1、写出下列表达式的值(1)1<4 && 4<7 (2)1<4 && 7<4 (3)!(2<=5) (4)!(1<3)||(2<5)(5)!(4<=6)&&(3<=7)2、若x=3,y=z=4,求下列表达式的值(1)(z>=y>=x)?1:0 (2)z>=y && y>=x3、若x=3,y=2,z=1,求下列表达式的值(1)x<y?y:x (2)x<y?x++:y++ (3)z+=(x<y?x++:y++)4、请设计程序(1)依次输入10个数,找出其中的最大数。
(2)把三个任意数按升序排列。
(3)判断一个整数n能否被3和5整除。
四、分析与讨论五、教师评语1.按时完成实验;2.实验内容和实验过程记录完整;3.回答问题完整、正确;4.有关于实验的心得;5.实验报告的撰写认真、报告格式符合要求。
签名:郑利珍日期:2013年月日成绩100。
最新《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. 文件处理程序:- 实现文件的打开、读取、写入和关闭功能。
- 设计文件内容处理功能,如统计文件中的单词数量、查找特定字符串等。
- 编写用户友好的命令行界面,方便用户操作。
- 对文件处理程序进行全面测试,确保文件操作的安全性和可靠性。
实验结果:通过本次综合性实验,成功实现了学生信息管理系统、文本编辑器、计算器和文件处理程序。
所有程序均通过了功能测试和性能测试,满足了实验的基本要求。
课程设计报告课程名称C语言程序设计课题名称运动会分数统计系统专业机械设计及其自动化班级1185班学号201113090526姓名谭信指导教师王颖2012年6月22日湖南工程学院课程设计任务书课程名称C语言程序设计课题运动会分数统计系统专业班级机械设计1185学生姓名谭信学号201113090526指导老师王颖审批王颖任务书下达日期2012年6月1日任务完成日期2012年6月22日现代科学飞速发展,世界也不断的变化,人类的生活随着科技的发展也发生着惊天动地的变化。
作为新时代的大学生,我们应该不断努力学习科学文化知识,以适应社会的发展要求,以现代化的科学知识为祖国做贡献。
而C 语言作为一种计算机语言,无疑是我们将来工作不可缺少的一门技能,所以我们应该认真学好C语言。
但只是课本上的知识是不够的,我们应该将从课本上学到的理论知识应用到实践中,通过不断的实践,在实践中发现错误解决错误,并不断创新,最后能熟练的运用所学的知识,充分掌握这种工具。
就现有知识水平、经验来看,对我来说,本程序的算法设计上已经是最精简的了。
C语言知识博大精深,有必要对C语言的专著进行研究学习,多阅读别人的程序代码、多动手实践操作与设计,这样便对程序算法精简改进提供了可能。
想学的更深更透彻的话就必须进一步掌握运用C进行程序设计的能力;进一步理解和运用面向过程程序设计的思想和方法;初步掌握开发一个小型实用系统的基本方法;学会调试一个较长程序的基本方法;学会利用互联网查找相关的知识并学习;学海之路何其宽广,有必要让我们孜孜不倦的求索下去。
绪论 (1)第一章需求分析1.1程序的功能及要求 (5)1.2系统的性能要求 (5)1.3测试数据 (6)第二章概要设计2.1结构体 (6)2.2主程序(main) (6)2.3模块的功能 (6)2.4程序模块机之间的调用关系 (7)第三章详细设计3.1宏定义 (8)3.2数据类型定义 (8)3.3函数之间的调用关系图 (8)3.4算法设计 (9)第四章调试分析4.1不足之处 (10)4.2错误规范 (10)4.3算法的时空分析 (10)4.4存在的问题 (10)第五章测试结果 (11)第六章用户使用手册6.1运行环境 (12)6.2用户界面 (12)6.3操作过程 (13)第七章参考文献 (14)第八章设计体会 (15)第九章附录 (17)课程设计评分表 (29)运动会分数统计系统是一个方便管理各项分数标准的一个程序,有了这个程序,可以吧每一个同学的信息及成绩都保留下来,为评比成绩和得优提供方便,程序的顺利及简便运行时现在科学不可缺少的一部分,有了程序的帮助,我们做任何事都能事半功倍,提高效率,节省时间。
根据任务书的综合要求,本系统的开发主要完成以下功能和性能。
(1)学生成绩查询系统,成绩录入、增加、删除、修改,数据查询,排序显示构成。
(2)按学生总分及学校编号,分为有男女组,有团体组,有前三名和前五名之分。
(3)按项目编号查询即奇偶性取得前三或前五名的学校或者编号来查询所得总分(4)另外还涉及包括系统的功能分析、系统的功能模块设计、程序流程图或结构框图、逻辑结构设计,数据库中的表、视图等各功能板块。
一、目的全面熟悉、掌握C语言基本知识,掌握C程序设计中的顺序、分支、循环三种结构及数组、函数和C语言基本图形编程等方法,把编程和实际结合起来,增强对不同的问题运用和灵活选择合适的数据结构以及算法描述的本领,熟悉编制和调试程序的技巧,掌握分析结果的若干有效方法,进一步提高上机动手能力,培养使用计算机解决实际问题的能力,养成提供文档资料的习惯和规范编程的思想,为以后在专业课程中应用计算机系统解决计算、分析、实验和设计等学习环节打下较扎实的基础。
二、设计要求掌握结构化程序设计的主体思想,以自顶向下逐步求精的方法编制程序解决一些实际的问题,为将来编写软件积累一些典型的案例处理经验。
1.设计正确,方案合理。
2.界面友好,使用方便。
3.程序精炼,结构清晰。
4.设计报告5000字以上,含程序设计说明,用户使用说明,源程序清单及程序框图。
5.上机演示。
6.按学号顺序选课题号,并在规定的时间内独自完成相关课题的C源程序编写、调整和运行。
源程序及编译生成各文件均保存在软盘中;7.按本任务书的要求,按附录的要求编写《课程设计报告》(Word文档格式)。
并用A4的复印纸打印并装订;8.在2012年6月24日之前,请各班学习委员收齐课程设计报告和源程序软盘交王颖老师,联系电话:8883238。
三、进度安排第一周星期四:课题讲解,查阅资料第二周星期一:总体设计,详细设计星期二:编程,上机调试、修改程序星期三:上机调试、完善程序星期四:上机调试、完善程序星期五:答辩星期六-星期天:撰写课程设计报告一、问题描述:参加运动会的n 个学校编号为l~n。
比赛分成m 个男子项目和w 个女子项目,项目编号分别为l~m 和m+1~m+w。
由于各项目参加人数差别较大,有些项目取前五名,得分顺序为7,5,3,2,1;还有些项目只取前三名,得分顺序为5,3,2。
设计一个统计程序按名次产生各种成绩单、得分报表。
二、基本要求:1.产生各学校的成绩单,内容包括各校所取得的每项成绩的项目号、名次、成绩、姓名和得分;产生团体总分报表,内容包括校号、男子团体总分、女子团体总分和团体总分;均按名次排序。
2.比赛项目既要有径赛,又要有田赛。
三、测试数据:对于n=4,m=3,w=2,编号为奇数的项目取前五名,编号为偶数的项目取前三名,设计一组实例数据。
四、实现提示:1.数据结构:线性表2.数据库结构:下面四张表构成该系统的基本数据库,全部输出报表由系统根据基本表自动生成。
表1-1表1-23.可以假设n≤20,m≤30,w≤20,姓名长度不超过20个字符。
每个项目姓名运动员编号校名学校编号项目名项目编号初始化时完成录入floatchar char char char char 成绩类型性别项目编号学校编号运动员编号结束时,将其编号、类型符(区分取前五名还是前三名)输入,并输入运动员编号、学校编号和成绩等。
五、选作内容:允许用户指定某项目采取其他名次取法。
比如例图法,结构图系法,树状法,等等。
每个人的思维都是有所不同的,程序的设计故也是千差万别,有简单与复杂之分。
编号的不同也是选取方法不同的标准之一,运用数组和指针我觉得是比较实用的,对于各种数据的组合来说。
所以,只要程序符合,方法不一。
第一章需求分析1.程序的功能及要求参加运动会有n个学校,学校编号为1……n。
比赛分成m个男子项目,和w个女子项目。
项目编号为男子1~m,女子m+1~m+w。
不同的项目取前五名或前三名积分;取前五名的积分分别为:7、5、3、2、1,前三名的积分分别为:5、3、2;哪些项目取前五名或前三名由学生自己设定。
(m<=20,n<=20)1)可以输入各个项目的前三名或前五名的成绩;2)能统计各学校总分;3)可以按学校编号、学校总分、男女团体总分排序输出;4)可以按学校编号查询学校某个项目的情况;5)可以按项目编号查询即奇偶性取得前三或前五名的学校。
根据C++课程所学的概念、理论和方法,按照C++程序设计的基本步骤,设计出一个适当规模的程序来实现设计课程内容中的全部功能;设计主控模块程序.对给出的程序源代码要给出各部分的详细注释.自己根据能力及需要添加相应功能模块,增强模拟系统功能。
包括系统的功能分析、系统的功能模块设计、程序流程图或结构框图、逻辑结构设计,数据库中的表、视图(如果使用)、索引的结构和定义、触发器、存储过程、课程设计体会。
2.系统性能要求:a.系统安全、可靠;b.功能齐全;c.操作方便、界面友好;d.易于维护和扩充。
3.测试数据1)首先进入成绩录入界面,先输入学校编号1,再输入学校1各个项目成绩0或1(‘0’表示没获得该项目的该名次,‘1’表示获得了该项目的该名次);然后再输入第二个学校编号2,再输入成绩;当输入其他的学校编号和成绩会提示错误输入,重新输入。
2)然后进入总目录,输入:1统计各学校总分并输出;3)输入:2按学校编号排序输出;4)输入:3按学校总分排序输出;5)输入:4按男团体总分排序输出;6)输入:5按女团体总分排序输出;7)输入:6按学校编号查询学校某个项目情况;8)输入:7按项目编号查询取得名次的学校;9)输入:0退出系统;10)输入其他数据会提示错误输入,重新输入。
第二章概要设计1.结构体运动项目{项目编号;名次;};学校{学校编号;项目;团体总分;男团体总分;女团体总分;};2.主程序(main)包括登陆欢迎程序,分数录入程序,查询程序,退出程序3.系统功能模块学生成绩查询系统有:成绩录入、增加、删除、修改,数据查询,排序显示构成。
4.程序模块机之间的调用关系流程图图1启动程序录入分数显示主目录统计各学校总分按学校编号排序按学校总分排序按女团体总分排按学校编号查询学校某个项目情况按男团体总分排按项目编号查询取得名次的学校退出系统用户选择某命令,产生相应的操作显示结果,用户选择返回主目录或退出退出程序第三章详细设计1、宏定义:#define N2#define bm4#define gm32、数据类型定义(1)运动项目的定义:struct match{int matchnum;int rank[3];}mat[bm+gm];(2)学校的定义:struct school{int schoolnum;struct match mat[bm+gm];int total;int boytotal;int girltotal;}sch[N];3、函数之间的调用关系表1-34、算法设计主要算法的设计思想:本程序主要是使用顺序表来实现操作。
一个运动会包括运动项目和参加运动会的学校。
因此构造顺序表match,school。
为了操作的方便,设计了一个总目录,选择相应序号进入各个操作,并有错误提示,每完成一个操作程序会提示选择返回目录或退出程序,对于总分的排序使用了冒泡排序。
为了使整个程序界面看起来更加惬意,又添加了背景和字体颜色设置的程序语句。
每个操作前都有操作指南,易于使用。
mainxunhuantotaljisua n inputhuanyingni funct4funct6funct5funct3funct2funct1funct0mulu funct7syst第四章调试分析1、不足之处。
由于刚开始程序比较简单,虽能运行,但处理错误的能力很低,后来经过反复的添加修改,使程序能处理了错误,提高了健壮性。
课程设计中我遇到了很多的问题,刚刚开始的时候问题特别多。
看起来简单的句子往往也会出错,比如刚开始的时候用for语句时,总会报错;说用的不对。