实验七 指针
- 格式:doc
- 大小:29.50 KB
- 文档页数:2
实验七:指针的应用【实验目的】1.掌握指针和指针变量,内存单元和地址、变量与地址、数组与地址的关系;2.掌握指针变量的定义和初始化,指针变量的引用方式;3.能正确使用数组的指针和指向数组的指针变量;【实验内容】1.填空题输入一个字符串,将其中的大写字母转换成小写字母,然后输出本程序主要是比较scanf()输入和gets()输入的区别#include <stdio.h>void main(){ char s[20];char *p=s;scanf(“%s”,p); /*注意用scanf()输入和gets()输入的区别*/while( 1 ){if( 2 ) *p=*p+ (‘a’-‘A’);p++ ;}puts ( 3 );}答案:1、*p!=’\0’2、(*p>='A')&&(*p<='Z')3、s运行结果:输入:Program输出:program输入:This is Program输出:this提示:scanf ()输入时遇到空格认为字符串结束,用gets()输入时只有遇到回车才认为字符串结束。
如键入any boy并回车,则2。
补充程序题输入15个整数存入一维数组,再按逆序重新调整该数组中元素的顺序然后再输出。
下面给出部分程序的内容,请将程序补充完整,然后上机调试。
部分程序清单如下:#include <stdio.h>void main(){ int a[15],*p1,*p2,x;for(p1=a;p1<a+15;p1++)scanf("%d",p1);for(p1=a,p2=a+14;p1<a+7;p1++,p2--){ x=*p1;*p1=*p2;*p2=x;}……}答案:for(p1=a;p1!=a+15;p1++)printf("%d ",*p1); // %d后面有一个空格运行结果:输入:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15输出:15 14 13 12 11 10 9 8 7 6 5 4 3 2 1提示:(1)在整型数组中,没有结束标志,必须依靠数组中数据元素的个数控制循环次数。
C语⾔教材第七章指针实验第七章指针第⼀部分知识训练【知识要点】1. 地址与指针指针变量的概念:⽤⼀个变量专门来存放另⼀个变量的地址。
2. 指向变量的指针变量指针变量的形式:基类型 *指针变量名;&: 取地址运算符;*:指针运算符。
3. 指针与数组引⽤⼀个数组元素可以⽤下标法和指针法;可以⽤数组名作函数的参数。
4.指针与函数函数指针变量定义的⼀般形式为:类型说明符 (*指针变量名)();⼀个函数的返回值可以是⼀个函数。
【典型习题与解析】5. char * const p;char const * pconst char *p上述三个有什么区别?【解析】char * const p; //常量指针,p的值不可以修改;char const * p;//指向常量的指针,指向的常量值不可以改;const char *p; //和char const *p。
6. main(){int a[5]={1,2,3,4,5};int *ptr=(int *)(&a+1);printf("%d,%d",*(a+1),*(ptr-1));}输出结果是什么?【解析】答案:输出:2,5*(a+1)就是a[1],*(ptr-1)就是a[4],执⾏结果是2,5。
&a+1不是⾸地址+1,系统会认为加⼀个a数组的偏移,是偏移了⼀个数组的⼤⼩(本例是5个int)。
1)&a是数组指针,其类型为 int (*)[5];⽽指针加1要根据指针类型加上⼀定的值,不同类型的指针+1之后增加的⼤⼩不同。
2)a是长度为5的int数组指针,所以要加 5*sizeof(int),所以ptr实际是a[5],但是prt与(&a+1)类型是不⼀样的(这点很重要),所以prt-1只会减去sizeof(int*) a,&a的地址是⼀样的,但意思不⼀样。
3)a是数组⾸地址,也就是a[0]的地址,&a是对象(数组)⾸地址,a+1是数组下⼀元素的地址,即a[1],&a+1是下⼀个对象的地址,即a[5]。
实验七⾃准直仪测量直线度实验七⾃准直仪测量直线度⼀、仪器原理:⾃准直仪是测量微⼩⾓度变化量的精密光学仪器,它适⽤于测量精密导轨的直线度误差及⼩⾓度范围内的精密⾓度测量,⽤⾃准直仪测量被测量要素的直线度误差。
利⽤⾃准直仪的光轴模拟理想直线,将被测量直线与理想直线⽐较,将所得数据⽤作图法或计算法来求出直线度误差值。
图3-3-1为⾃准直仪外形图。
图3-3-1⾃准直仪外形图1-灯头2-光源锁紧螺母3-读数⿎4-⽬镜5-紧固螺钉6-光电头锁紧⿎7-光电头8-基座⽀架9-物镜10-反射镜11-光电检波器图3-3-2⾃准直仪光路系统图1-光源2-聚光镜3-⼗字线分划板4-⽴⽅棱镜5-物镜组6-反射镜7-分光镜8-双刻线分划板9-⽬镜10-振动狭缝11-聚光镜12-光敏电阻13-测微螺丝14-测微读数⿎轮15-光电检波器⾃准直仪的光路系统如图3-3-2所⽰,光源1发出的光线经聚光镜2,照亮⼗字线分划板3后,经过中间有半透膜的⽴⽅棱镜4射向物镜组5,经物镜组成平⾏光束投射到反射镜6上。
平⾏光束经反射镜⼜返回到⽴⽅棱镜4,并反射向上⾄分光镜7。
⼀路光透过分光镜7,把分划板3的⼗字线成象在带双刻线分划板8上,通过⽬镜9即可进⾏⽬视瞄准;另⼀路光在分光镜7上反射,把⼗字线成象在振动狭缝10处,再经聚光镜11聚焦到光敏电阻12上,光敏电阻将光通量的变化转变为电信号,并送⾄检波器,经处理后由微安表指⽰。
振动狭缝、光敏电阻、和测微分划板连成⼀体,并装在光电头壳体中。
旋转测微读数⿎轮14能带动它们⼀起移动,可使狭缝振动中⼼与⼗字线象中⼼重合,此时微安表的指针指零,表⽰已瞄准好。
同时,在⽬镜视场中测微分划板的双线也应瞄准⼗字线象,表⽰⽬视瞄准与光电瞄准是同步的。
通过读数⿎轮便可读出⼀个⾓度值,(或从光电检波器上读数)。
测量时,平⾯反射镜6偏转某⼀⾓度,⼗字线象在双刻线分划板8和振动狭缝10上的位置就有所改变。
旋转读数⿎轮再次进⾏瞄准,即可在⿎轮(光电检波器)上读得另⼀⾓度值。
常熟理工学院电气与自动化工程学院《C语言程序设计》实验指导书实验一熟悉C程序运行环境班级学号姓名成绩一、实验目的1. 熟悉C语言Visual C++6.0调试环境。
2. 掌握C程序的编辑、调试及运行。
二、实验内容项目1. 调试并运行下面程序,并写出运行结果:#include <stdio.h>int main(){printf(“Good morning!\n”);printf(“Hello,world!\n”);return 0;}运行结果(注意,按照屏幕输出格式写):项目2. 调试并运行下面程序,并写出运行结果:#include <stdio.h>int main(){int a , b , sum; /*定义变量*/a=23; b=56; /*为变量赋值*/sum=a+b; /*计算两个变量的和*/printf(“sum is %d\n”,sum); /*输出计算结果*/return 0;}运行结果:2项目3. 调试并运行下面程序,并写出运行结果:#include <stdio.h>int max(int,int);int main(){int a , b , c; /*定义变量*/a=23; b=56; /*为变量赋值*/c=max(a,b); /*调用max函数,将得到的值赋给c*/ printf(“max is %d\n”,c); /*输出c的值*/return 0;}int max(int x,int y) /*定义max函数,函数值为整型*/ {int z; /*定义变量*/if(x>y)z=x;elsez=y;return(z); /*将z的值返回*/}运行结果:三、提高部分1.试想,如果求10个数中的最大者,则程序该如何编写。
程序代码运行结果:实验二数据及其运算班级学号姓名成绩一、实验目的1. 掌握C数据类型的概念、熟悉整型、字符型和实型基本类型的常量的用法;学会三种基本类型变量的定义、赋值和使用方法。
实验手册使用及要求实验操作是教学过程中理论联系实际的重要环节,而实验报告的撰写又是知识系统化的吸收和升华过程,因此,实验报告应该表达完整性、标准性、正确性、有效性。
现将实验报告撰写的有关内容说明如下:1、实验前按实验要求手写程序或程序填空,并走查代码,有疑问处标记,上机时在C语言集成开发环境下输入并调试手写程序,分析运行结果。
2、实验完毕后填写通过后的源程序和对实验的总结。
3、通过后的源程序可以手写也可以打印粘贴。
实验工程一览表实验一熟悉C语言编程环境实验目的:1.熟悉C语言编程环境〔VC++、Cfree、Turboc等〕2.了解C程序的根本框架3.理解程序调试的思想,能找出并改正C程序中的错误实验内容:1.1 建立自己的文件夹:在磁盘上建立一个文件夹,用于存放自己的C程序1.2 编程例如在屏幕上显示一个短句“Programming in C is fun!〞〔教师例如,学生模仿并创新,如输出汉字、特除字符等。
学会使用编程环境VC++,启动、编辑、编译、运行、保存、关闭、翻开〕1.3 编程在屏幕上显示如下网格。
+---+---+| | || | |+---+---+调试例如改正以下程序中的错误,在屏幕上显示“Welcome to You !〞。
〔掌握找错、改错的方法〕源程序:# include <stdio.h>int mian(void){printf(Welcome to You! \n")getchar();return 0;}注:需要修改的语句直接在程序上标注并修改实验总结:实验二用C语言编写简单程序实验目的:1.掌握算术表达式和赋值表达式的使用2.掌握根本输出函数的使用3.能够自己编程实现简单的数据处理4. 熟练掌握简单if语句使用5. 熟练掌握for语句的使用6. 掌握简单C程序的查错方法、单步调试实验内容:2.1 调试以下程序,求华氏温度对应的摄氏温度。
计算公式为:C=5*(f-32)/9#include <stdoi.h>int main(void){int celsius; fahr;scanf("%d ",fahr);celsius = 5 * (fahr - 32) / 9;printf("fahr = d, celsius = %d\n", fahr, celsius);return 0;}注:需要修改的语句直接在程序上标注并修改2.2编写程序计算定期存款本利之和:设银行定期存款的年利率rate为2.25%,并存款期为n年,存款本金为capital元,试编程计算n年后的本利之和deposit。
C语言实验报告实验一:c语言环境的开发与使用1.实验目的:上机编写简单的c语言程序,逐步了解c语言运行的程序步骤2.实验内容:在turboc3.0的环境下调试简单的c语言3.实验清单:输入一行字符(如“hello!”)Ex513_11.c#include<stdio.h>Int main(){printf(“hello!\n”);return 0;}从键盘输入两个整数,将其平方和输出(用函数关系求平方和)Ex513_12.c#include<stdio.h>#include<math.h>int main(){int a,b,c;printf(“\n input a=”);scanf(“%d”,&a);printf(“\n input b=”);scanf(“%d”,&b);c=sqre(a,b);printf(“sqre=%d”,c);return 0;}int sqre(x,y)int x,y;{return x*x+y*y;}从键盘输入三个整数,将其最大值输出。
(用函数求最大值)Ex513_13.c#include<stdio.h>int main(){int a,b,c,d;printf(“\n input a=”);scanf(“%d”,&b);printf(“\n input c=”);scanf(“%d”,&c);d=max(a,b,c);printf(“max=%d”,d);return 0;}int max(x,y,z);int x,y,z,t;{if(x>y) t=x;else t=y;if(z>t) t=z;return t;}输入三角形三边的长度,将其面积输出(用函数求面积) Ex513_14.c#include<stdio.h>#include<math.h>Int main(){double a,b,c,s,area;a=3.67;b=5.43;c=6.21;s=(a+b+c)/2;area=sqrt(s*(s-a)*(s-b)*(s-c));printf(“a=%f\tb=%f\t%f\n”,a,b,c);printf(“area=%f\n”,area)return 0;}4运行结果及分析程序:Ex513_11.c结果:输出hello!分析:掌握输出一行字符的写法程序:Ex513_12.c结果:输入1,2输出5分析:编写正确,但不够简洁程序:Ex513_13.c结果:输入-3,1,2输出2分析:程序运用了函数程序:Ex513_14.c结果:输入3,4,5输出6分析:编写不够简洁实验二:顺序结构设计1.实验目的:了解什么是常量和变量及种类掌握整型,实型,字符型变量的定义和使用及输出规律掌握七个运算符的运算法则及其混合运算规律2.实验内容:假如我国国民生产总值的年增长率为百分之九,计算十年后我国国民生产总值与现在相比增长多少?Ex513_21.c#include<stdio.h>#include<math.h>int main(){float p,r,n;r=0.1;n=10;p=pow(1+r,n);printf("p=%f\n",p);return 0;}用编好的scanf函数输入数据,使a=3,b=7,x=8.5,y=71.82,c1=’A’,c2=’a’Ex513_22.c#include<stdio.h>int main(){int a,b;float x,y;char c1,c2;scanf("a=%d b=%d",&a,&b);scanf("%f%e",&x,&y);scanf("%c%c",&c1,&c2);printf("a=%d,b=%d,x=%f,y=%f,c1=%c,c2=%c\n",a,b,x,y,c1,c2);return 0;}设圆半径r=1.5,圆柱高h=3,求圆周长,圆面积,圆球表面积,圆球体积,圆柱体积。
C语言实验程序总结实验七指针c语言实验程序、总结实验七指针一、实验目的实验七指针1.理解指针的概念,学习定义和使用指针变量。
2掌握指针、变量和数组的关系和用法。
3.学习使用指向函数的指针变量。
二实验内容1编写函数fun(float*Sn,INTN),其函数是根据以下公式计算s,计算结果通过形式参数Sn返回;N通过参数传入,N的值大于或等于0。
在计算机上运行并记录输入和输出(主要功能已给出)。
s?1?1111????3572n?1fun(float*sn,intn){定义变量:和s,一般术语W,符号F,循环控制变量I;/*其中s和F将被初始化*/循环累加和s{改变符号;/*由负变正或由正变负*/找出一般术语W;累加:S+=w;}形参指针变量sn赋值;/*通过形参sn传回累加和s*/}main(){浮动;intn;printf(\n=\);scanf(\%d\,&n);fun(&s,n);printf(\s=%f\\n\,s);}完整程序如下:#包括voidfun(float*sn,intn){floats=0.0,w,f=-1.0;inti=0;对于(i=0;i<=n;i++);{f=(-1)*f;w=f/(2*i+1);s+=w;}*sn=s;}main(){浮动;intn;printf(\fun(&s,n);printf(\}输出结果如下图:2.如果你想让指针变量pT1指向a和B中较大的一个,而pT2指向较小的一个,下面的程序能达到这个目的吗?交换(int*p1,int*p2){int*p;p=p1;p1=p2;p2=p}main() {inta,b;int*pt1,*pt2;scanf(\%d,%d\,&a,&b);pt1=&a;pt2=&b;if(aprintf(\%d,%d\\n\,*pt1,*pt2);]上机调试此程序。
如果不能实现题目要求,指出原因并修改之。
南昌理工学院实验报告二OO 年月日课程名称大学物理实验名称焦利氏称的使用班级姓名同组人指导教师评定签名【一、实验名称】焦利氏称的使用【二、实验目的】1、掌握焦利氏秤的工作原理,学习焦利氏秤的使用方法。
2、学会用焦利氏秤测量弹簧的弹性系数。
3、学会用焦利氏秤测量微小物体的质量。
【三、实验原理】1、焦利氏秤图1焦利氏秤实际上就是弹簧秤。
但一般的弹簧秤,弹簧的上端固定不动,在弹簧下端挂重物时,弹簧则伸长,物体重量可由指针所指示的标尺直接标出。
而焦利氏秤上的弹簧是挂在可以上下移动的有刻度的管子上的,管外面套有外管,外管上有游标,旋转旋钮即可使管上下移动。
利用焦利氏秤可测定负荷与弹簧伸长的关系,可以测量液体的的表面张力系数、物体的比重以及进行微小物体的重量的秤衡。
其结构如图1所示:在装有水平调节螺丝②的三足座①上,竖直装一套筒④,套筒顶端安装0.1刻度的游标⑤,筒内插入刻有毫米度尺的钢管⑥,利用旋扭③通过里面的滑轮,链条可调节刻度铜管在11用夹子○16供夹持套筒中升降,螺钉⑦供固定弹簧⑧之用,带小缺口的夹子⑩供夹持指示管○平台套筒,旋扭○17调节平台○15的升降。
本仪器另附有玻皿盘○13、铝盘○12和指标镜⑨。
当上下移动管,使细金属杆上镜子的标线和玻璃管上的标线在镜中的像三者重合(以后简称三线重合)时,相当于弹簧秤对准零点,零点的读数可由管的刻度和外管上的游标读出。
实验所用的合金丝绕制的弹簧共两种规格列表如下:弹簧形状合金丝直径(毫米)最大负荷(克)柱形0.5 30锥形0.6 302. 焦利氏秤的“三线对齐”使用方法在使用焦利氏秤时,应是反光镜D上的水平刻线、玻璃管E的水平刻线各玻璃管水平刻线在反光镜D中的像重合,即“三线对齐”。
用“三线对齐”方法可保证弹簧下端的位置始终是固定的,而弹簧伸长量△X使可以用米尺和游标卡尺测量出来(也即将弹簧伸长前、后两次的读数之差测量出来)。
读数方法和游标卡尺的读书方法完全一样。
成绩辽宁工程技术大学上机实验报告课程名称嵌入式程序设计(C++)学院软件学院专业嵌入式软件班级嵌软12-1学号姓名日期2015.01.17-2015.01.18目录实验一熟悉VC++编程环境 (1)实验二带有循环语句的C++程序 (5)实验三熟悉VC++编程环境 (9)实验四类与对象 (14)实验五继承与派生 (19)实验六友元函数与运算符重载 (22)实验七指针数组 (26)实验八函数的定义与调用 (30)实验一熟悉VC++编程环境实验目的(1)熟悉VC++编程开发环境。
(2)掌握在VC++集成开发环境中编译、调试与运行程序的方法。
(3)掌握简单的出入输出程序编写,调试,运行。
实验准备(1)准备下载安装一个VC++编程软件。
(2)复习书本前三章,回顾C++编程基本原理及程序格式。
(3)从书上挑选源程序作为实验程序。
(4)准备好新建工程,设置文件保存地址。
实验过程一、程序一1.实验内容:新建c++源程序,使之输出一个字符串。
2.程序代码:# include <iostream.h>void main(){ cout<<" ***************"<<'\n';cout<<" Hello!"<<'\n';cout<<" ***************"<<'\n';}3.调试,运行,分析结果。
二、程序二1.实验内容:编写一个C++程序,要求输入一个矩形的长和宽,输出面积和周长。
2.程序代码:# include <iostream.h>void main(){ float a,b ,L,S;cout<<"请输入一个矩形的长与宽:"<<endl;cin>>a>>b;L=(a+b)*2;S=a*b;cout<<"矩形的长与宽: " <<a<<"和"<<b<<endl;cout<<"矩形的周长: " <<L<<endl;cout<<"矩形的面积: " <<S<<endl;}3.调试,运行,分析结果。
实验七信号发生器的使用一、实验目的1. 了解信号发生器、频率计及交流毫伏表的用途和特点。
2. 熟悉三种仪器面板上各旋钮的作用,学习正确的使用方法。
二、实验原理信号发生器是指产生所需参数的电测试信号的仪器。
信号发生器又称信号源或振荡器,在生产实践和科技领域中有着广泛的应用。
各种波形曲线均可以用三角函数方程式来表示。
能够产生多种波形,如三角波、锯齿波、矩形波(含方波)、正弦波的电路被称为函数信号发生器。
除具有电压输出外,有的还有功率输出。
所以用途十分广泛,可用于测试或检修各种电子仪器设备中的低频放大器的频率特性、增益、通频带,也可用作高频信号发生器的外调制信号源。
另外,在校准电子电压表时,它可提供交流信号电压。
三、实验仪器和器材1.信号发生器 1 台2. 交流毫伏表 1 台3. 频率计 1 台四、实验内容按图 1 所示连接信号发生器、交流毫伏表和频率计,注意三个仪器的地端“┷”必须连接在一起。
图 2-1 信号发生器、毫伏表和频率计的连接1. 信号发生器频率变化时输出电压的测量首先将信号发生器的输出波形按键置于正弦档,频段按键置于 1KHz 档,倍乘器旋钮置于 1.0 ,“输出衰减”按钮置于 0dB 档( ATT 按键为弹起状态, AMPL 旋钮为按下状态),然后调节“输出幅值”旋钮,使毫伏表指示为 3V 。
按表 1 所示值改变信号发生器输出信号的频率,将有关旋钮、按键所置档位记入表 1 中。
表 l 信号发生器频率变化时的输出电压输出信号频率 (Hz) 10 100 500 1.5 k 20 k 180 k 1M频段按键档位 1 10 100 1K10K100K1M毫伏表测量值2.362.382.94 2.982.762.452.022. 信号发生器“输出衰减”变化时输出电压的测量信号发生器输出频率为 1KHz 的正弦波,“输出衰减”置于档,把“输出幅值”旋钮顺时针旋到底,使信号发生器输出最大幅值,用毫伏表测量信号发生器的最大输出电压,记入表 2 中。
实验七交流电路等效参数的测量YUKI was compiled on the morning of December 16, 2020实验七交流电路等效参数的测量一、实验目的1. 学习用交流电压表、交流电流表和功率表测量交流电路的等效参数2. 熟练掌握功率表的接法和使用方法二、原理说明1. 三表法测电路元件的参数正弦交流激励下的元件值或阻抗值,可以用交流电压表、交流电流表及功率表,分别测量出元件两端的电压U,流过该元件的电流I和它所消耗的功率P,如图7-1所示,然后通过计算得到所求的各值,这种方法称为三表法,是用以测量50Hz交流电路参数的基本方法。
根据交流电的欧姆定律,可以有阻抗的模│Z│=U/I电路的功率因数cosφ=P/UI等效电阻R=P/I2 =│Z│cosφ等效电抗X=│Z│sinφ=2πfL对于感性元件X=XL对于容性元件X=Xc=1/2πfC2. 三表法测交流电路的等效参数如果被测对象不是一个单一元件,而是一个无源二端网络,也可以用三表法测出U、I、P后,由上述公式计算出R和X,但无法判定出电路的性质(即阻抗性质)。
3. 阻抗性质的判别方法阻抗性质的判别可以在被测电路元件两端并联或串联电容来实现。
(1)并联电容判别法在被测电路Z两端并联可变容量的试验电容C′,如图7-2(a)所示,(b)图是(a)的等效电路,图中G、B为待测阻抗Z的等效电导和电纳,B′=ωC′为并联电容C′的电纳。
根据串接在电路中电流表示数的变化,可判定被测阻抗的性质。
设并联电路中B+B′=B″,在端电压U不变的条件下:①若B′增大,B″也增大,电路中总电流I 将单调地上升,故可判断B为容性元件;②若B′增大,B″先减小后再增大,总电流I 也是先减小后上升,如图7-3所示,则可判断B为感性元件。
由上分析可见,当B为容性元件时,对并联电容C′值无特殊要求;而当B为感性元件时,B′<│2B│才有判定为感性的意义。
B′>│2B│时,电流将单调上升,与B为容性时的情况相同,并不能说明电路是感性的。
《C语言程序设计》实验(上机)报告
《C语言程序设计》实验(上机)报告
《C语言程序设计》实验(上机)报告
《C语言程序设计》实验(上机)报告
《C语言程序设计》实验(上机)报告
《C语言程序设计》实验(上机)报告
《C语言程序设计》实验(上机)报告
《C语言程序设计》实验(上机)报告
《C语言程序设计》实验(上机)报告
实验报告填写说明
1.实验报告中的班级写行政班级(如道土1班),学号写完整学号(如20176000101),实
验日期不要漏写,任课教师写全名。
2.设计流程(算法描述)的书写用传统流程图、N-S流程图或伪代码中的任一种方式写出算法。
3.调试和测试结果应有内容,至少是“调试结果正确”,如果遇到错误,则写出错误信息,
及调试解决方法。
要求写出测试用的数据和测试结果,应对所有路径都进行测试。
《C语言》实验指导书编(全校理工类本科用)2014年2月目录实验一简单C语言程序设计 (1)实验二顺序结构程序设计 (3)实验三选择结构程序设计 (5)实验四循环结构程序设计 (7)实验五数组程序设计 (10)实验六函数程序设计 (13)实验七指针程序设计 (16)实验八结构体程序设计 (17)附录1 C语言上机步骤 (18)实验一简单C语言程序设计实验类型:验证性实验课时: 4 指导教师:时间:2014 年月日课次:第节教学周次:第周实验分室:实验台号:实验员:一、实验目的1.掌握所用的C语言环境的基本操作方法。
2.掌握编辑、编译、连接和运行C程序。
3.掌握C程序的数据类型、运算符,表达式。
二、实验内容和要求1.打开C语言环境,编辑如下程序,写出运行结果。
#include <stdio.h>void main(){printf(“Hello World!\n”);}2. 在屏幕上显示下列图形:* * * ** * ** **3.完成习题集中习题一的内容4. 已知三角形的三边长为3,4,5,求三角形周长5 .完成习题集中习题二内容实验二顺序结构程序设计实验类型:验证性实验课时: 2 指导教师:时间:2014 年月日课次:第节教学周次:第周实验分室:实验台号:实验员:一、实验目的1.掌握基本输入输出函数、库函数的使用。
2.能够编程实现简单的结构化程序。
二、实验内容和要求1.执行程序,写出运行结果。
#include <stdio.h>void main(){float a = 9.1234567891234567890;double b = 9.1234567891234567890;printf("%f, %lf\n",a,b);printf("%.15f,%.15\n",a,b);};2.运行程序,写出结果。
#include <stdio.h>void main(){float x1;double y1 ;scanf("%f %lf ",&x1,&y1) ;printf("x1=%f,y1=%lf ",x1,y1) ;}程序运行时输入x的值123456789,输入y的值123456789。
C语⾔实验报告上机要求:禁⽌玩游戏、看视频及从事与课程⽆关的活动。
实验内容按照指导书内容填写,可以把⾃⼰上机编写的程序、遇到的问题、解决办法写上(得到⾼分的条件)。
在有输⼊输出的程序部分,应该写上输⼊输出的结果,以表⽰程序能正确⼯作。
实验⼀编程环境的使⽤⼀、⽬的和要求1.了解编程环境的使⽤。
2.学会处理简单的错误,观察运⾏结果。
3.掌握基本的输⼊输出。
⼆、实验原理VisualC++6.0是⼀个集成的开发环境,包括编辑、编译连接和调试。
编写程序的主要过程是:建⽴⼯作区、建⽴⼯程、添加源⽂件、输⼊程序、运⾏程序、改正出现的错误直到有正确的输出结果。
三、实验内容及步骤1.编程环境的使⽤。
(1)打开VisualC++6.0开发环境。
(2)单击“⽂件-〉新建”菜单命令,显⽰出“新建”对话框(如图1-3)。
在新建对话框单击“⼯程”标签,选中Win32 Console Application项,然后在⼯程框中键⼊控制台应⽤程序项⽬名称,并且选中空⼯程。
(3)添加C++源⽂件,输⼊⽂件名。
(4)打开编辑窗⼝,输⼊程序,保存。
(5)编译运⾏程序,找到其错误位置,改正错误。
2.编写如下程序,从键盘读⼊两个整数,计算它们的和差积商,将结果输出在屏幕上。
3.编写如下程序,从键盘读⼊两个字符,并输出在屏幕上。
四、思考问题1.如何使⽤不同的数据类型。
2.如何处理输⼊输出。
3.如何查找程序中的错误?实验⼆选择结构⼀、⽬的和要求1. 掌握if ...else 及其嵌套的⽤法。
2. 掌握switch 的⽤法。
⼆、实验原理if 语句是专门⽤来实现选择结构的语句,是根据⼀个条件满⾜与否来决定是否执⾏某条语句或从两个语句中选择⼀个语句执⾏。
if-else 语句的⼀般格式为:if (表达式1) 语句1else if (表达式2)语句2……else if (表达式n )语句nelse 语句n+1当程序中有多个条件判断时,若使⽤if 语句可能使嵌套太多,降低了程序的可读性,switch 语句能很好的解决这个问题。
实验七 电表改装和校准实验简介电表是常用的电学测量仪器。
按用途可分为直流电流表、交流电流表、直流电压表、交流电压表、欧姆表等,这些电表都可以用表头改装而成。
表头是基本的电学测量工具,可分为数字表、指针表等。
本实验通过一只指针式直流电表的改装和校准,学习有关电表的基本知识及如何进行电表的校准。
实验目的1.熟悉电流表、电压表的构造原理。
2.学习改装和校准电流表、电压表的基本方法。
实验原理1.将A μ表头改装成大量程的电流表因为微安表头的满刻度电流(量程)很小,所以在使用表头测量较大的电流前,需要扩大它的电流量程。
扩大量程的方法是,在表头两端并联一个阻值较小的电阻R s (如图1)使流过表头的电流只是总电流的一部分。
表头和R s 组成的整体就是电流表。
R s 称为分流电阻。
选用不同阻值的R s 可以得到不同量程的电流表。
在图1中,当表头满度时, 通过电流表的总电流为I , 通过表头的电流为I g 。
因为 s g g g g R I I R I U )(-==故得 g g g s R I I I R )(-=(1)如果表头的内阻R g 已知,则按照所需的电流表量程I ,由式(1)可算出分流电阻R s 的阻值。
2.将表头改装成电压表根据欧姆定律U=IR ,内阻为R g 的表头,若通以电流I g ,则表头两端电压降为U g =I g R g ,因此直流电流表可以对直流电压进行测量。
通常R g 的数值不大,所以表头测电压的量程也很小。
为了测量较高的电压,需在表头上串联一个阻值较大的电阻R H (如图2),使超过表头电压量程的那部分电压降落在电阻R H 上,R H 称为扩程电阻。
选用不同的扩程电阻,可以得到不同量程的电压表。
在图2中,设改装后伏特计的总电压为U ,当表头指针满刻度时,扩程电阻R H 两端的电压为H g R I ==g H U -U U ,于是有g gggH R I UI U U R -=-=(2) 根据所需要的电压表量程U 和表头内阻R g ,由式(2)可算出扩程电阻R H 的阻值。
实验七指针(1)
一、实验目的
1.掌握指针变量的定义与引用
2.掌握指针与变量、指针与数组的关系
3.掌握用数组指针作为函数参数的方法。
4.熟悉TC集成环境的调试指针程序的方法
二、实验内容
以下均用指针方法编程:
1. 调试下列程序,使之具有如下功能:用指针法输入12个数,然后按每行4个数输出。
写出调试过程。
main()
{ int j,k,a[12],*p;
for(j=0;j<12;j++)
scanf("%d",p++);
for(j=0;j<12;j++)
{ printf("%d",*p++);
if(j%4 == 0)
printf("\n");
}
}
调试此程序时将a设置为一个"watch",数组a所有元素的值在一行显示出来。
调试时注意指针变量指向哪个目标变量。
2. 在主函数中任意输入10个数存入一个数组,然后按照从小到大的顺序输出这10个数,要求数组中元素按照输入时的顺序不能改变位置。
三、实验要求
1.复习指针的定义与使用方法。
2.编写程序,运行程序并记录运行结果。
3.将源程序、目标文件、可执行文件和实验报告存在软盘上。
实验八指针(2)
一、实验目的
1.掌握C语言中函数指针的使用方法。
2.掌握C语言中指针数组的使用方法。
3.熟悉TC集成环境的调试指针程序的方法
二、实验内容
1.调试下列程序,使之具有如下功能:任意输入2个数,调用两个函数分别求:
⑴ 2个数的和,
⑵ 2个数交换值。
要求用函数指针调用这两个函数,结果在主函数中输出。
main()
{ int a,b,c,(*p)();
scanf("%d,%d",&a,&b);
p=sum;
*p(a,b,c);
p=swap;
*p(a,b);
printf("sum=%d\n",c);
printf("a=%d,b=%d\n",a,b);
}
sum(int a,int b,int c)
{ c=a+b;
}
swap(int a;int b)
{ int t;
t=a;
a=b;
b=t;
}
调试程序时注意参数传递的是数值还是地址。
2.输入一个3位数,计算该数各位上的数字之和,如果在[1,12]之内,则输出与和数相对应的月份的英文名称,否则输出***。
例如:输入:123 输出:1+2+3=6→ June
输入:139 输出:1+3+9=13→ ***
用指针数组记录各月份英文单词的首地址。
三、实验要求
1.复习函数指针和指针数组的使用方法。
2.编写程序,运行程序并记录运行结果。
3.将源程序、目标文件、可执行文件和实验报告存在软盘上。