第一篇:《c语言程序设计》上机实验报告要求
《c语言程序设计》上机实验报告要求
1.实验环境:
软件系统:使用的软件环境
硬件系统:机型说明
2.实验目的:掌握如何编辑、编译、链接调试运行c程序
3.实验内容:
(1)掌握顺序结构程序设计.P26 ,p49,p62 3.2~3.7
(2)掌握选择结构程序设计(if 和switch语句的用法)p4.2~
(3)循环结构程序设计(while, dowhile,for语句的用法)。
(4)掌握数组的定义、输入和输出的方法,字符数组、字符串函数的使用。
(5)了解函数的定义,熟悉函数实参与形参的“值传递”方式,掌握函数的嵌套调用和递归调用方法。
(6)熟悉指针含义及其使用。
(7)熟悉结构体和共用体的使用。
(8)熟悉文件的使用。
4.实验要求:
(1)输入编写的源程序,检查程序有无错误(语法和逻辑错误),有则改
之。
(2)编译和连接,仔细分析编译信息,如有错误应找出原因并改正。
(3)运行程序,输入数据,分析结果。
5.实验结果:
输出程序清单和运行结果。(要求把原题内容,调试好的程序和其结果一并打
印),6.实验体会
分析运行结果,本次调试程序取得的经验(遇到的问题,解决的方法等)。
第二篇:C语言程序设计上机实验报告
黔南民族师范学院 C语言程序设计上机实验报告
系部:计算机科学系 年级:2013 级 班级:
姓名:
学号:
实验时间:
实验成绩:
2013年月日
实验三顺序结构程序的设计
一 实验名称:顺序结构程序的设计
二.实验环境:windows XP系统,VC++6.0软件
三.实验目的:
四.实验内容:
五.算法描述流程图
六.源程序
七.测试数据及运行结果
八.实验心得
实验成绩评分要求
1、原创性发现抄袭或雷同成绩为0分
2、正确性程序正确60分
3、可读性格式清楚,有注释,变量命名规范20分
4、健壮性对特殊测试数据有考虑有测试10分
5、效率程序运行效率高10分
第三篇:C程序设计上机实验报告10
C程序设计实验报告
实验名称:指针与数组学时安排: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 5
2.输入10个整数存储到数组a,再输入一个整数x,在数组a中查找x,若找到则输出相应的下标,否则显示“Not found!”。要求定义和调用函数search(int list[], int n, int x),在数组list中查找元素x,若找到则返回相应下标,否则返回-1。参数n代表数组list中元素的数量。
3.改正程序error08_1.cpp中的错误。该程序实现功能,有n个整数,使前面各数顺序循环移动m个位置(m 要求先读该源程序,并理解其中的算法。然后把正确的代码(按规范缩进)写入报告,并以注释的方式说明错误原因。 注释示例如下: int i;/*循环控制变量不能定义为double类型*/ 提示:这是一个双重循环问题,内循环进行循环移位,外循环确定后移的位置。 4.有n个人围成一圈,按顺序从1到n编号。从 Last No.is: 4 提示:可以把编号存在一个数组中,报到3的人赋值为0表示退出。可以另外定义两个变量,一个用来记录退出的人数,到n-1即结束,另外一个用来报数。 四、程序清单 第一题 #include void swap(int *,int*); void sort(int a[],int n); void main() { int i,n,a[8]; printf(“Input n:”); scanf(“%d”,&n); printf(“Input array of %d integers: ”,n); for(i=0;i scanf(“%d”,&a[i]); sort(a,n); printf(“After sorted the array is:”); for(i=0;i printf(“%3d”,a[i]); printf(“n”); } void sort(int a[],int n) { int i,j,index; for(i=0;i { index=i; for(j=i+1;j if(a[j] index=j; swap(&a[i],&a[index]); } } void swap(int *px,int *py) { int t; t=*px; *px=*py; *py=t; } 第二题 #include int search(int list[],int n,int x); void main() { int i,x,result,a[10]; printf(“Enter a[0]-a[9]:”); for(i=0;i<10;i++) scanf(“%d”,&a[i]); printf(“Enter x:”); scanf(“%d”,&x); result=search(a,10,x); if(result==-1) printf(“Not found!n”); else printf(“The position is %dn”,result); return 0; } int search(int list[],int n,int x) { int i,result=-1; for(i=0;i if(list[i]==x) { result=i; break; } return result; } 第三题 #include void mov(int *, int, int); int main() { int m, n, i, a[80], *p; printf(“Input n, m:”); scanf(“%d%d”,&n,&m); printf(“Input array of 5 int55egers:”); for(p=a,i=0;i scanf(“%d”,p++);// p本身可取地址 mov(a,n,m); printf(“After moved the array is:”); for(i=0;i printf(“%5d”,a[i]); printf(“n”); return 0; } void mov(int *x, int n, int m) { int i,j,t; for(i=0;i { t=x[n-1];/*保存最后位置的元素值*/ for(j=n-1;j>0;j--)/*从倒数第二个元素开始,每个元素向后一个位置 */ x[j]=x[j-1];/* 调试时设置断点 */ x[0]=t;/*将保存的最后元素值放在最前面*/ } } 第四题 #include int main() { int i,j,n,t,count,a[10000]; printf(“Input n:”); scanf(“%d”,&n); for(i=0;i<=n;i++) a[i]=i; count=0; i=1; j=0; while(count { if(i>n) i=1; if(a[i]!=0) j++; if(j==3) { t=i; a[i]=0; j=0; count++; } i++; } printf(“Last No.is:%dn”,t); return 0; } 五、运行结果 六、实验心得 1、C中数组名即是数组中首元素(下标为0的元素)的地址。注意:这不包括形参数组名,因为形参数组名并不占据实际的内存单元。它只是指向其它数组首地址的指针。 2、数组名(比如a)代表数组首元素的地址,它是一个指针常量,在程序中不能改变它的值。例如:a++是非法的。 3、实参数实参数组名代表一个固定的地址,或者说是指针常量。但形参数组并不是一个固定的地址,而是作为指针变量,它的值是可以改变的。在函数调用开始时,它的值等于实参数组首元素的地址,在函数执行期间,它可以再被赋值。 4、指向数组的指针变量也可以带下标,如:p[i]与*(p+i)等价。*(p+i)与*(a+i)等价。 5、当实参是数组名时,传递的是该数组首元素的地址,即是一个指针。 C语言上机实验报告 2160500146 计算机66马俊松 在本学期,共进行了大约五次上机,完成了数十道编程题,现将在完成作业过程中所遇到的问题以及解决过程进行如下几点总结,并提出几点建议。 1.在刚开始那几次做编程作业时,经常因为只是输出时的格式不符合moodle上的要求而的零分,因而不断修改,浪费大量时间,希望今后moodle网站能在这一点上做出改进(如果过程正确而只是输出格式错误,可以不必给零分)。比如下面几个题: 2.在做6.1题(找出一句话中最长的子字符串)的过程中,因为字符数组的知识未掌握牢固,在以下几个方面卡了比较久: ①:字符串在输入时,若用scanf(”%s”,a),则只会得到第一个单词;若用for(i=1;i<=n;i++)scanf(“%c”,a[i]),则循环会一直持续知道输入n个字符;若希望将整句话输入,应用gets(a); ②:将”n”,” ”,” “几个概念搞混淆,因而在条件判断时出现混乱,导致错误。 3.在做7.1题(用函数实现学生的信息录入及排序)时,遇到了以下几个问题并卡了比较久的时间: ①:运用了错误的输入方式,导致未能的到完整的输入信息或输入过程中直接中断(如下图); ②:刚开始时为采用指针的思想,导致在设计程序时比较繁琐;但应注意在使用完指针p++后,应重新给指针p赋回初值; 总的来讲,编程就是不断在错误和调试中找到想自己的的想法完整表达出来,这一学期的上机实践使我的编程能力有了进一步提高。 指导教师学院专业班级学号姓名实验室 实验题目: 实验要求: 实验内容及步骤: 运行结果 心得体会:第四篇:c语言上机实验报告
第五篇:《C语言程序设计》实验报告