实验6 数组
- 格式:pdf
- 大小:405.53 KB
- 文档页数:9
php实验报告总结与体会php实验报告总结与体会1. 引言在经过一学期的学习和实践,我有幸进行了一系列的php实验,通过编写代码和实践项目,掌握了php语言的基本语法和特性。
在这篇文章中,我将对我进行的实验进行总结和回顾,分享我对php的个人观点和理解。
2. 实验一:入门实验实验一是我对php语言的第一次接触和学习实践。
通过编写简单的“Hello World”程序,我了解了php的基本语法和语义。
我发现php是一种简单易学的语言,语法规则清晰,代码结构简洁。
通过实验一,我对php的基本语法有了初步的了解,为后续的学习奠定了基础。
3. 实验二:变量与数据类型实验二主要围绕php的变量和数据类型展开。
我学习了php的基本数据类型,包括整数、浮点数、字符串、布尔值等,并掌握了变量的定义和使用。
通过实践运用,我发现php的变量赋值和使用非常灵活,可以方便地进行运算和操作。
php的数据类型转换也是一个重要的概念,我学到了如何将一个数据类型转换为另一个数据类型,为写出高质量的php代码提供了便利。
4. 实验三:条件语句与循环控制实验三是我对php条件语句和循环控制的实践。
通过掌握if语句、switch语句和for循环、while循环等,我学习了如何根据条件执行不同的代码块和如何针对一定条件进行循环操作。
这些控制流程的语法和用法都非常简单明了,使我能够通过编写php代码实现各种复杂的逻辑操作。
5. 实验四:函数的定义与使用实验四是对php函数的实践。
通过学习函数的定义和使用,我了解了php函数的作用和用法。
我发现函数是一个非常重要的概念,可以帮助我们将一段代码块进行封装和复用。
通过函数,我们可以提高代码的可读性和可维护性,同时也可以减少代码的重复性。
在实验四中,我还学习了php函数的参数传递和返回值的使用,更加深入地理解了函数的灵活性和便利性。
6. 实验五:数组与文件操作实验五是对php数组和文件操作的实践。
实验2答案五.程序改错#include<stdi o.h>int main(void){int x=3,y;y = x*x;printf("%d = %d * %d\n",y,x,x); /* 输出*/printf("%d * %d = %d\n",x,x,y);return 0;}六、一般编程题6.1#include<stdio.h>int main(void){int x,y;printf("Input x: ");scanf("%d",&x);printf("Input y: ");scanf("%d",&y);printf("%d + %d = %d\n",x,y,x+y);printf("%d - %d = %d\n",x,y,x-y);printf("%d * %d = %d\n",x,y,x*y);printf("%d / %d = %d\n",x,y,x/y);printf("%d %% %d = %d\n",x,y,x%y);return 0;}6.2#include<stdio.h>int main(void){ float x; double y;printf("Input x: ");scanf("%f",&x);printf("Input y: ");scanf("%lf",&y);printf("%f + %f = %f\n",x,y,x+y);printf("%f - %f = %f\n",x,y,x-y);printf("%f * %f = %f\n",x,y,x*y);printf("%f / %f = %f\n",x,y,x/y);return 0;}6.3#include<stdio.h>int main(void){ char c;printf("Input c: ");scanf("%c",&c);printf("%c\n",c+32);return 0;}6.4#include<stdio.h>int main(void){int celsius,fahr;fahr = 150;celsius = 5*fahr/9 - 5*32/9;printf("fahr = %d, celsius = %d\n", fahr, celsius);return 0;} 如果使用公式9)32(5-⨯=f c 计算结果不一样,celsius = 65。
实验一:简单的C程序设计(2学时)一、实验方式:一人一机二、实验目的:1、了解C语言程序的编译环境和编写过程。
2、掌握C语言程序在Visual C++ 6.0环境下的调试过程。
3、初步了解C语言程序的特点。
4、掌握C语言的数据类型。
三、实验内容:1、计算两个数x和y的和。
(教材P5【例1-2】)2、从键盘输入华氏温度h,输出摄氏温度c(摄氏温度=5/9*(华氏温度-32))。
(实验教材P18)3、给定圆环,输入内圆环半径r1、外圆环半径r2,求出圆环的面积。
(实验教材P27)4、从键盘上输入两个整数x、y,实现两个数的交换,并求出最大值、最小值和两个数的平均值。
(实验教材P21)5、输入并运行以下程序,分析运行结果。
(实验教材P27)#include <stdio.h>void main( ){int i,j;i=8; j=10;printf(“%d,%d\n”,++i,++j);i=8; j=10;printf(“%d,%d\n”,i++,j++);i=8; j=10;printf(“%d,%d\n”,++i,i);i=8; j=10;printf(“%d,%d\n”,i++,i);}四、实验程序代码:五、实验运行结果(截图):实验二:顺序结构程序设计(2学时)一、实验方式:一人一机二、实验目的:1、掌握标识符、常量、变量的定义及使用。
2、掌握C语言的常用运算符及表达式。
3、掌握单分支if语句的使用方法。
4、掌握双分支if-else语句的使用方法。
三、实验内容:1、从键盘输入一个3位整数,请输出该数的逆序数。
(实验教材P27)2、输入3个字符型数据,将其转换成相应的整数后,求它们的平均值并输出。
(实验教材P27)3、判断箱子是正方体还是长方体。
(实验教材P33)4、有一函数: x (x<1)y= 2x-1 (1≤x<10)3x-11 (x≥10) 编写程序,输入x值,输出y值。
《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。
《程序设计基础Ⅱ》课程教学大纲一、课程与任课教师基本信息二、课程简介《程序设计基础》是为软件工程专业开设的第一门程序设计课程。
本课程以C语言为载体,介绍程序设计语言的基本概念、结构化程序设计的一般方法以及算法的概念及其表示方式,C语言的基本数据类型及其运算、三种基本程序控制结构、编译预处理、数组、函数的嵌套调用与递归调用、结构体与共用体、指针及其应用、文件及其操作等,为后续其它程序设计语言与工具、学科基础课程、专业课程学习提供程序设计的基础。
三、课程目标结合专业培养目标,提出本课程要达到的目标。
这些目标包括:1.知识与技能目标通过本课程的学习,理解算法的概念与表示方式,掌握用程序框图或N-S 图对问题解决的算法思想的描述和表达。
掌握C语言的基本数据类型及其运算、三种基本程序控制结构、编译预处理、数组、函数的嵌套调用与递归调用、结构体与共用体、指针及其应用、文件及其操作。
通过学习和实践,逐步掌握程序设计的基本思想和方法,培养问题求解和语言的应用能力。
为后续课程打好基础。
2.过程与方法目标在本课程的学习过程中,学生将学习结构化程序设计的基本思想、方法。
通过大量的编程实践,使学生初步具备对现实世界问题进行抽象思维和分析,对解决问题的算法思想进行描述和表达的能力。
理解程序错误的主要方面与原因,掌握程序调试与排除错误的基本方法,培养良好的程序设计和调试能力。
3.情感、态度与价值观发展目标通过本课程的学习,使学生了解学习与运用、学习与能力的辩证关系。
培养学生独立思考、合理分配和利用时间、不断总结、提高学习效率的良好学习方法。
坚持不懈、勤于思考、严谨治学的科学态度,为未来的学习、工作奠定良好基础。
四、与前后课程的联系本课程是软件工程专业开设的第一门程序设计课程。
本课程讲授的内容在后续的专业基础课程和专业课程,如:算法与数据结构、操作系统、以及其它后续程序设计语言与工具课程中都有具体体现,是学习好上述后续课程重要基础。
java实验报告--数组Java实验报告 - 数组引言:Java是一种广泛应用于软件开发的编程语言,其强大的数组功能使得它成为处理大量数据的理想选择。
本实验报告将探讨Java中数组的基本概念、使用方法以及一些常见的应用场景。
一、数组的定义与初始化在Java中,数组是一种用于存储多个相同类型元素的数据结构。
数组可以存储基本数据类型(如整数、浮点数等)或者对象。
声明一个数组需要指定元素的类型和数组的名称,然后使用关键字"new"来创建数组对象。
二、数组的访问与操作通过索引(index)可以访问数组中的元素,索引从0开始计数。
例如,对于一个长度为10的整数数组,可以使用arr[0]来访问第一个元素,arr[1]来访问第二个元素,以此类推。
数组的长度可以通过arr.length来获取。
三、数组的遍历与排序遍历数组是指逐个访问数组中的元素。
常用的遍历方法有使用for循环和foreach循环。
对于需要对数组进行排序的情况,可以使用Java提供的排序算法(如快速排序、冒泡排序等)或者使用Arrays类中的sort方法。
四、多维数组除了一维数组,Java还支持多维数组。
多维数组可以看作是数组的数组,可以用于存储表格、矩阵等结构化数据。
在声明多维数组时,需要指定每一维的长度。
五、数组的应用场景1. 数据存储与处理:数组可以用于存储和处理大量数据,如学生成绩、员工工资等。
通过数组,可以方便地进行数据的查找、排序和统计等操作。
2. 图像处理:图像可以用二维数组表示,每个元素代表一个像素点的颜色值。
通过对数组的操作,可以实现图像的旋转、缩放等功能。
3. 算法实现:许多算法的实现都需要使用数组,如查找算法、排序算法等。
数组的高效访问和操作使得算法的实现更加简洁和高效。
六、实验案例:数组的查找与统计为了更好地理解数组的应用,我们设计了一个实验案例:数组的查找与统计。
假设有一个整数数组,我们需要找到其中的最大值、最小值、平均值以及某个特定元素的出现次数。
实验六函数一,实验目的:1,掌握定义函数的方法.2,掌握函数实参与形参的对应关系,以及"值传递"的方式.3,掌握函数的嵌套调用和递归调用的方法.4,掌握全局变量和局部变量动态变量,静态变量的概念和使用方法.二,实验准备:1,复习函数调用的基本理论知识.2,复习函数的嵌套调用和递归调用的方法.3,复习全局变量,局部变量;静态变量,动态变量;外部变量等概念和具体使用. 4,源程序.三,实验步骤及内容:1,运行程序并回答问题(1)程序main(){ play(3);}void print_star(){ printf("* * * * * * * * * *\n")}void print_message(){ printf("Good Friend! \n");}void play(n)int n;{ int i;for(i=1;i<=n;++i){ print_star();print_message();}}问题:运行后出现什么错误为什么应如何修改请上机调试.修改:main(){ play(3);}void print_star(){ printf("* * * * * * * * * *\n");(缺少分号)}void print_message(){ printf("Good Friend! \n");}play(n)(原先void的与声明类型不同)int n;{ int i;for(i=1;i<=n;++i){ print_star();print_message();}getch();}运行结果(2)以下程序用于计算1+2+3+4+5.main(){ int i,sum;for(i=1;i<=5;++i)sum=add(i);printf("sum=%d\n",sum);getch();}add (a)int a;{static int s=0;s=s+a;return(s);}运行结果:问题:此程序能否得到正确结果为什么请在不增加语句的条件下,修改程序并上机调试.(3)程序int x=567,y=890;main(){ printf("x=%d,y=%d\n",x,y);}运行结果:问题:运行程序后出现什么错误为什么如何修改答:定义位置出错,y的定义在主函数之后了,将y的定义改在和x一样的位置处。
《C语言程序设计》课程教学大纲适用专业信息与计算科学总学时90学分 4一、编写说明(一)本课程的性质、地位和作用本课程属于信息与计算科学的专业课,C程序设计语言的语法规则、数据类型、数据运算、语句、函数、指针、程序结构等方面的学习,掌握应用C语言进行程序设计的技能,为今后进一步学习程序开发以及科学与工程计算的软件开发奠定一个良好的基础。
(二)本大纲制定的依据根据本专业人才的培养目标和人才培养规格所需要的基本理论和基本技能的要求,根据本课程的教学性质、条件和教学实践而制定。
(三)大纲内容选编原则与要求通过对本课程的学习,使学生掌握基本概念、基本原理、基本知识和实际操作能力,重点落实到“用”上。
在对大纲内容选编时,在注重基本原理、基本概念的同时,特别强调实用系统的设计与开发,做到了理论与实践有效结合。
(四)实践环节实验1:C程序的运行环境和运行一个C程序的方法, 2学时主要内容与要求:了解所用的计算机系统的基本操作方法,学会独立使用该系统;了解在该系统上如何编辑、编译、连接和运行一个C程序;通过运行简单的C程序,初步了解C 程序的特点。
实验2:简单的C程序设计,2学时主要内容与要求:掌握C语言数据类型,熟悉如何定义一个整型、字符型和实型的变量,以及对它们赋值的方法;掌握不同类型数值之间赋值的规律;学会使用C的有关算术运算符,以及包含这些运算符的表达式;掌握赋值语句的使用方法;掌握各种类型数据的输入输出方法,能正确使用各种格式转换符。
实验3:逻辑结构、循环控制程序设计,4学时主要内容与要求:了解C语言表示逻辑量的方法;学会正确的使用逻辑运算符和逻辑表达式;熟练掌握if语句和switch语句;熟悉掌握用while 语句,do while语句和for语句实现循环的方法;掌握在程序设计中用循环的方法实现一些常用算法(如穷举、迭代、递推等);进一步学习调试程序。
实验4:数组、函数,4学时主要内容与要求:掌握一维数组和二维数组的定义、赋值和输入输出方法;掌握字符数组和字符串函数的使用;掌握与数组有关的算法(特别是排序算法);掌握定义函数的方法;掌握函数实参与形参的对应关系以及“值传递”的方式;掌握函数的嵌套调用和递归调用的方法;掌握全局变量和局部变量,动态变量、静态变量的概念和使用方法;学习对多文件程序的编译和运行。
实验六指针与引用一、目的和要求1.掌握指针、指针变量、指针常量的基本概念;2.掌握指针与数组、指针与函数的关系及应用。
3.初步掌握引用的概念及简单应用。
二、实验设备及分组1.Windows XP操作系统;2.Visual C++6.0语言环境;3.每人一台PC机。
三、内容和步骤(一)验证实验程序1.指针变量的自加、自减、加n和减n运算。
假设数组a的首地址为1000。
解:# include <iostream.h>void main( ){int a[5]={0,1,2,3,4};int *p;p=&a[0]; //p指向a[0],p=1000p++ ; //p指向下一个元素a[1],p=1004cout<< *p<<'\t'; //输出a[1]的内容1。
p=p+3; //p指向下3个元素a[4],p=1016cout<< *p<<'\t'; //输出a[4]的内容4。
p――; //p指向上一个元素a[3],p=1012cout<< *p<<'\t'; //输出a[3]的内容3。
p=p―3; //p指向上3个元素a[0],p=1000cout<< *p<<'\t'; //输出a[0]的内容0。
}运行结果:1 4 3 02.指出下列程序的错误。
#include <iostream.h>void exchange(int,int);void main(){int a,b;cin>>a>>b;cout<<"Before Exchange:a="<<a<<",b="<<b<<endl;exchange(a,b);cout<<"After Exchange:a="<<a<<",b="<<b<<endl;}void exchange(int x,int y){int t;t=x;x=y;y=t;}分析:本例的目的是在子函数中交换的两个变量的值,在主函数中使用。
实验六1.实验目的通过本次实验(1)初步掌握函数的定义方法,及函数的三种调用方法;(2)理解参数传送过程中,值传送与传地址的过程与区别;(3)初步学会用递归编写程序方法;(4)学会用数组作为函数参数的编程方法。
2.实验要求(1)编写实验程序(2)在VC++运行环境中,输入源程序;(3)编译运行源程序;(4)输入测试数据进行程序测试;(5)写出运行结果。
3.实验内容(1)分别用冒泡法(升序)、选择法(降序)、擂台法(升序)编写三个对一维数组进行排序的函数,函数名为sort1()、sort2()、sort3()。
再定义一个输出数组元素值的函数print()。
在主函数中定义一维整型数组a[N](N=10),用键盘输入10个整数给a[N]数组。
依次调用sort1()、print()、sort2()、print()、sort3()、print(),进行升序、降序、升序的操作,并输出每次排序后的结果。
输入十个实验数据:10,25,90,80,70,35,65,40,55,5(2)编写一个函数px(float x,int n)用递归的方法求下列级数前n项的和s。
在主函数中定义变量x与n,用键盘输入x与n的值,调用px()函数计算并返回级数前n项和s。
最后输出s的值。
输入实验数据:x=1.2 n=10(3)编写一个字符串连接函数str_cat(char s[],char s1[],chars2[]),完成s=s1+s2的字符串连接工作。
具体要求为,先将字符串s1复制到s中,然后再将字符串s2连接到s后面。
在主函数中定义三个字符串数组str[80]、str1[40]、str2[40],将两个字符串输入到str1与str2中,调用字符串连接函数str_cat(),将str1与str2连接到str中,最后输出连接后的字符串str。
要求用两种方法编写str_cat()函数。
方法一,用字符串复制与连接函数。
方法二,用while语句编程实现。
佛山科学技术学院教学日历
2006至2007学年第 二 学期
授课教师姓名 林冬梅 职称 副教授 授课专业班级06机械设计制造及自动化 课程名称C 语言程序设计 根据何种教学大纲 本校《C 语言程序设计》教学大纲
采用教材名称 谭浩强 《C 程序设计》(第二版)
主管教学系主任签名:主管教学签名院长:
年月日年月日
说明:1、本教学日历由主讲教师负责填写,于前一学期最末一周内送交教师所在系(室)主任审定、签字后备查。
2、此表一式二份,其中,任课教师留一份,教师所在系(室)留一份。
【实验目的】(1)掌握数组的声明创建;(2)掌握数组的初始化;(3)掌握数组常用的操作;【实践1内容】打印数组元素该程序应提示用户输入几个整数,将它们存储到数组中,然后以向前和向后的顺序打印出这些整数。
完成程序,使其正常运行。
使用数组使程序足够灵活,无论用户想要多少个整数,它都可以工作。
运行示例如下:你要输入多少个数据? 4 请输入一个整数: 12 请输入一个整数: 8请输入一个整数: -2 请输入一个整数: 39正向顺序: 12 8 -2 39 逆向顺序: 39 -2 8 12数组和串实验总结第2篇行优先存储:掌握自己推导三角矩阵对角矩阵三对角矩阵(带状矩阵)的压缩存储|i-j|>1时,有ai,j = 0(1<=i,j<=n)行优先对于一个n*n的矩阵,最多只有n个非0元素,只需存储n个对角元素信息即可。
直接采用一维数组d[i]存储M(i,i)的值稀疏矩阵三元组 <行,列,值>定义一个新的结构体十字链表定义一个新的结构体杨辉三角形,又称贾宪三角形,帕斯卡三角形,是二项式系数在三角形中的一种几何排列。
二项式定理与杨辉三角形是一对天然的数形趣遇,它把数形结合带进了计算数学。
求二项式展开式系数的问题,实际上是一种组合数的计算问题。
用系数通项公式来计算,称为“式算”;用杨辉三角形来计算,称作“图算”。
其实,中国古代数学家在数学的许多重要领域中处于遥遥领先的地位。
中国古代数学史曾经有自己光辉灿烂的篇章,而杨辉三角的发现就是十分精彩的一页。
杨辉三角示例如下:通过二维数组实现杨辉三角形前N行的求值并打印输出。
6个数组3中3有几组
6个数字三中三是120组。
从6个数字中任取3个(不能重复),这3个就是一组(且不管这3个数字的先后排列顺序),所以,一共有C=(6*5*4*3*2*1)/(3*2*1)=120种。
或者:
先从6个里面选1个,有C=6种。
再从剩下的5个里面又取1个,有C=5种;
再从剩下的4个人里面取1个,又有C=4种。
所以,总共的方法是:6*5*4=120种。
两个常用的排列基本计数原理及应用:
1、加法原理和分类计数法:
每一类中的每一种方法都可以独立地完成此任务。
两类不同办法中的具体方法,互不相同(即分类不重)。
完成此任务的任何一种方法,都属于某一类(即分类不漏)。
2、乘法原理和分步计数法:
任何一步的一种方法都不能完成此任务,必须且只须连续完成这n步才能完成此任务。
各步计数相互独立。
只要有一步中所采取的方法不同,则对应的完成此事的方法也不同。
《C语言程序设计实验》指导书(简明版)**大学软件学院**年**月实验一顺序结构程序设计(2学时)一、实验目的1、熟悉C编译环境、简单C程序结构及书写方式、以及C程序的编辑、编译、连接、运行、调试的步骤;2、掌握C语言的基本数据类型及其输入输出格式,以及输入输出函数的使用方法;3、掌握C语言的算术运算符(特别是自增、自减运算符)、赋值运算符、关系运算符、逻辑运算符、条件运算符、逗号运算符的使用;4、掌握C语言顺序结构程序的执行流程、设计方法,能够根据实际问题灵活使用顺序结构,画出程序的算法流程图,设计出逻辑合理、思路清晰、结果正确的顺序结构程序。
二、实验内容及要求1、实验内容包括8道题目,分为基本内容和选做内容两部分。
要求:(1)基本内容中的实验题目是必须要完成的,选做内容中的实验题目可以根据自己的情况选做或全做(越多越好,适当加分);(2)在实验之前编写出基本内容、选做内容中的所有程序,实验前检查(视未完成情况适当扣分);(3)对于设计型题目,要求画出程序流程图(传统流程图和N-S图);(4)在上机实验过程中,注意总结和体会上机步骤(编辑、编译、连接、运行、调试、结果分析),注意培养观察、分析和排除编译错误、连接错误和程序逻辑错误的初步能力;(5)上机结束后,应按要求认真书写实验报告(格式见附件)。
2、基本内容(1)[验证型]编辑下列程序,然后进行编译、连接和运行,观察结果,并简要总结简单C程序的结构、书写格式以及上机过程;#include <stdio.h>int main( ){printf("Hello, world!\n");return 0;}(2)[验证型]通过运行下列程序,分析各种格式符的使用方法。
#include <stdio.h>int main( ){int a = 9, b = 2;float x = 32.8459, y = -792.451;char d = 'R';long n = 5461237;unsigned u = 65535;printf("%d,%d\n", a, b);printf("%3d,%3d\n", a, b);printf("%f,%f\n", x, y);printf("%-10f,%-10f\n", x, y);printf("%8.2f,%8.2\n", x, y);printf("%.4f,%.4f\n", x, y);printf("%3f,%3f\n", x, y);printf("%e,%10.2e\n", x, y);putchar(d);putchar('\n');printf("%c,%d,%o,%x\n", d, d, d, d);printf("%ld,%lo,%x\n", n, n, n);printf("%u,%o,%x,%d\n", u, u, u, u);return 0;}(3)[验证型]编辑下列程序,进行编译、连接和运行。