实验十一指针应用二daan

合集下载

C语言实验-第七章-第九章2

C语言实验-第七章-第九章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)在整型数组中,没有结束标志,必须依靠数组中数据元素的个数控制循环次数。

人教版高中物理选修31 第2章第9节实验:练习使用多用电表2

人教版高中物理选修31 第2章第9节实验:练习使用多用电表2

(4)测量二极管的反向电阻
①机械调0(左侧0);
②选挡:将选择开关旋至高倍 率的欧姆挡(例如“×100Ω 挡);
③再次电阻调0(右侧0);
④测量:将黑表笔接触二极管 负极,红表笔接触二极管正极;
⑤读数:将指针示数乘以倍率 得测量值。
(5)应用:判断二极管的正负极; 判断二极管的好坏。
正向导通时,电阻约为几百欧姆;
实验十一 练习使用多用电表
(2)量程应大于小灯泡两端电压的 (1)将电流表串联在待测电路中。
如图,同一电表有不同的量程,不同的量程对应不同的最小刻度值。
估计值。 9实验:练习使用多用电表
二极管是一种半导体元件。
蓝色指针示数为

(3)红表笔接高电势,黑表笔接低 四、测量二极管的正反向电阻
欧姆零点是指刻度盘右侧的“0”位置,调整的是欧姆挡的调零旋钮.
本 讲 栏 目 开 关
基础再现·深度思考
实验十一 练习使用多用电表
【数据处理】
1.测电阻时,电阻值等于指针的示数与倍
本 率的乘积,指针示数的读数一般读两位有
讲 栏
效数字.
目 开
2.测电流和电压时,如果所读表盘的最小
关 刻度为1、0.1、0.01等,读数时应读到最
小刻度的下一位,若表盘的最小刻度为0.2、
为________ V.
154

讲 栏
6.2



图7
随堂训练·能力达标
实验十一 练习使用多用电表
1.用多用电表进行了几次测量,指针分别处于a、b的位置,如图9所示.若多用 电表的选择开关处于表格中所指的挡位,a和b的相应读数是多少?请填在表格 中.
本 讲 栏 目 开 关

实验十一 练习使用多用电表

实验十一 练习使用多用电表

实验十一练习使用多用电表一、基本原理与操作原理电路图操作要领原理:闭合电路欧姆定律I=ER+r+R g+R x(1)机械调零(2)测量定值电阻①先机械调零后欧姆调零②每换一挡重新欧姆调零(3)测量小灯泡的电压和电流(4)测量二极管的正、反向电阻(5)探索黑箱内的电学元件注意事项1.(1)操作:测量过程中严禁双手捏住两表笔金属杆。

(2)电流方向:红表笔进,黑表笔出。

2.测电阻时(1)指针指中值附近较准,否则换挡。

(2)读出示数要乘以倍率。

3.使用完毕,选择开关置于“OFF”挡或交流电压最高挡,长期不用应取出电池。

误差分析1.偶然误差(1)估读时易带来误差。

(2)表头指针偏转过大或过小都会使误差增大。

2.系统误差(1)电池用旧后,电动势会减小,致使电阻测量值偏大,要及时更换电池。

(2)测电流、电压时,由于电表内阻的影响,测得的电流、电压值均小于真实值。

教材原型实验命题角度利用多用电表测电阻、电压、电流【例1】(1)用如图1所示的多用电表测量电阻,要用到选择开关K和两个部件S、T请根据下列步骤完成电阻测量。

图1①旋动部件________,使指针对准电流的“0”刻线。

②将K旋转到电阻挡“×100”的位置。

③将插入“+”“-”插孔的表笔短接,旋动部件________,使指针对准电阻的________(选填“0刻线”或“∞刻线”)。

④将两表笔分别与待测电阻两端相接,发现指针偏转角度过小。

为了得到比较准确的测量结果,请从下列选项中挑出合理的步骤,并按________的顺序进行操作,再完成读数测量。

A.将K旋转到电阻挡“×1 k”的位置B.将K旋转到电阻挡“×10”的位置C.将两表笔的金属部分分别与被测电阻的两端相接D.将两表笔短接,旋动合适部件,对电表进行调零(2)如图2所示为多用电表的表盘,测电阻时,若用的是“×100”挡,则图示的电阻值为________Ω;测直流电流时,用的是0~100 mA的量程,此时图示的电流值为__________mA;测直流电压时,用的是0~50 V量程,此时图示的电压值为________V。

实验一 函数-指针及其应用参考答案doc

实验一 函数-指针及其应用参考答案doc

实验一函数、指针及其应用(一)函数的基本应用1.验证性实验⑴思考回答:可以将函数的形参看作一局部变量,函数在执行时,形参才被分配内存,执行函数时实参并没有参加运算,它只是将值传递给形参,由形参参加运算.而在函数结束后,形参的内存被释放,但实参的内存并没有被释放(要等到main函数结束时才被释放),因而执行完函数后,实参不变,而形参就不复存在了.2.程序填空⑴①sele(k)②k③n%3==0&&n%7==0⑵①1②flag③num%n④flag⑶①return n②n%10③x④sum(x)3.程序改错⑴将unsigned k=0;改为unsigned k=1;将k*=num/10;改为k*=num%10;将while(k);改为while(num);将scanf(“%d”,x)改为scanf(“%d”,&x);⑵将j=(n/10/10);改为j=(n/10)%10;将scanf(“%f”,&n);改为scanf(“%d”,&n);将if(flower(n))改为if(flower(n)==0)4.设计性实验⑴#include<stdio.h>int Isleap(int year){if((year%4==0&&year%100!=0)||year%400==0)return 1;return 0;}void main(){int year;printf(“Please input the year:”);scanf(“%d”,&year);if(Isleap(year))printf(“%d is a leap year!”,year);elseprintf(“%d is not a leap year!”,year);}⑵①/*方法1:递归版*/#include<stdio.h>int gy(int a,int b)/*求最大公约数函数*/{if(a%b==0)return b;else gy(b,a%b);}int gb(int a,int b)/*求最小公倍数函数*/{return a*b/gy(a,b);}void main(){int a,b;printf(“请输入两个数字:(例如\”4,5\”)\n”); scanf(“%d,%d”,&a,&b);p rintf(“\n最大公约数为: %d”,gy(a,b));printf(“\n最小公倍数为: %d”,gb(a,b));}②/*方法2:辗转相除法*/#include<stdio.h>int gy(int a,int b)/*求最大公约数函数*/{int r;while((r=a%b)!=0){a=b;b=r;}return b;}int gb(int a,int b)/*求最小公倍数函数*/{return a*b/gy(a,b);}void main(){int a,b;printf(“请输入两个数字:(例如\”4,5\”)\n”); scanf(“%d,%d”,&a,&b);printf(“\n最大公约数为: %d”,gy(a,b));printf(“\n最小公倍数为: %d”,gb(a,b));}③/*方法3:位运算版,奇妙的算法*/#include<stdio.h>int gy(int a,int b)/*求最大公约数函数*/{while(b^=a^=b^=a%=b);return a;}int gb(int a,int b)/*求最小公倍数函数*/{return a*b/gy(a,b);}void main(){int a,b;printf(“请输入两个数字:(例如\”4,5\”)\n”); scanf(“%d,%d”,&a,&b);printf(“\n最大公约数为: %d”,gy(a,b));printf(“\n最小公倍数为: %d”,gb(a,b));}⑶#include<stdio.h>int sum(int i){if(i==1)return i;elsereturn i+sum(i-1);}void main(){printf("sum=%d",sum(100));}⑷①/*方法1:递归版*/#include<stdio.h>int Fib(int n){if(n==0) return 0;else if(n==1) return 1;else return Fib(n-1)+Fib(n-2); }void main(){int n;printf("please input n:");scanf("%d",&n);printf("Fib(%d)=%d",n,Fib(n)); }②/*方法2:非递归版*/#include<stdio.h>int Fib(int n){int x,a=0,b=1,i;if(n==0) return a;else if(n==1) return b;else{for(i=1;i<=n-1;i++){x=a+b;a=b;b=x;}return x;}}void main(){int a=0,b=1,x,n,i;printf("Please input n:");scanf("%d",&n);printf("Fib(%d)=%d",n,Fib(n));}(二)指针与数组2.程序填空⑴①p②*p③%d⑵①x②i--③i<=10&&i>=13.程序改错⑴将double fun[3],r;改为double fun[3],*r;将scanf(“%f%f%f”,&fun[0],&fun[1],&fun[2]);scanf(“%lf%lf%lf”,&fun[0],&fun[1],&fun[2]);将r=quadratic(fun[3])改为r=quadratic(fun);⑵将scanf(“%d”,*p);改为scanf(“%d”,p);在for(;p>=a;p--)前添加语句p--;将if(p%2==0)改为if(*p%2==0)4.设计性实验⑴#include<stdio.h>#define N 10void main(){int a[N],*max,*min,*p,q;printf("Please input the array:\n");for(p=a;p<a+N;p++)scanf("%d",p);max=min=a;for(p=a;p<a+N;p++){if(*max<*p) max=p;if(*min>*p) min=p;}printf("Max=%d\n",*max);printf("Min=%d\n",*min);q=*max;*max=*min;*min=q;for(p=a;p<a+N;p++)printf("%d",*p);}⑵#include<stdio.h>#define M 3#define N 10void main(){char a[M][N],(*p)[N] ,(*q)[N],*temp="temp";/*注意:(*p)[N]不是指针数组,而是指向数组的行指针*/printf("Please input thr string:\n");for(p=a;p<a+M;p++)gets(p);for(p=a;p<a+M-1;p++)for(q=p+1;q<a+M;q++)if(strlen(p)-strlen(q)<0){strcpy(temp,p);strcpy(p,q);strcpy(q,temp);}for(p=a;p<a+M;p++)puts(p);}⑶#include<stdio.h>#define N 10void main(){char a[N],*p;printf("Please input the string:\n");gets(a);p=a;while(*p)p++;/*移动指针到最末尾处*/for(p--;p>=a;p--)/*p--的作用是让p由'\0'指向字符串最后一个字母*/printf("%c",*p);}⑷#include<stdio.h>#define N 10void input(int a[],int n){int i;for(i=0;i<n;i++)scanf("%d",&a[i]);}void process(int a[],int n){int i;int *p,*max,*min,t;max=min=a;for(p=a+1;p<a+n;p++){if(*max<*p) max=p;if(*min>*p) min=p;}{t=*min;*min=*a;*a=t;}/*交换最小数与第一个数*/{t=*max;*max=*(a+n-1);*(a+n-1)=t;}/*交换最大数与最后一个数*/ }void output(int a[],int n){int i;for(i=0;i<n;i++)printf("%d",a[i]);}void main(){int a[N];input(a,N);process(a,N);output(a,N);}⑸#include<stdio.h>char *find(char a[],char b[],char c[]){char *p,*q,*k;k=c;for(p=a,q=b;(*p)!='\0'&&(*q)!='\0';p++,q++)if(*p-*q==0){*k=*p;k++;}*k='\0';return c;}void main(){char a[N],b[N],c[N],*i;printf("Please input two strings:\n");scanf("%s%s",a,b);i=find(a,b,c);while(*i)i++;for(i--;i>=find(a,b,c);i--)putchar(*i);}(三)指针与函数二、实验内容2.程序填空⑴①min=*p1②min=*p2③min=*p3⑵①switch②add③(*funp)3.程序改错⑴将void swap(int,int);改为void swap(int *p,int *q)或void swap(int *,int *)将scanf(“%d%d%d”,i1,i2,i3)改为scanf(“%d%d%d”,&i1,&i2,&i3);将p1=i1;p2=i2;p3=i3;改为p1=&i1;p2=&i2;p3=&i3;⑵将p=s改为p=&s将unsigned x,p;改为unsigned x,*p;将printf(“%d”,p)改为printf(“%d”,*p);4.设计性实验⑴#include<stdio.h>int add_num(long num){int s=0,a;a=num;while(a>0){s+=a%10;a=a/10;}return &s;/*这类题告诉我们,函数执行完后,其内部形参并不是马上被释放内存,我们暂时可以通过指针继续访问它的值*/}void main(){long num;int *p;printf("Please input a number:");scanf("%ld",&num);p=add_num(num);printf("The sum of every digit is %d",*p);}⑵#include<stdio.h>int *gy(int a,int b){static int gys;/*把形式参数设定为静态变量,在函数结束时其内存就不会被释放,这样我们就可以用指针随时访问它了*/int r;while(r=a%b){a=b;b=r;}gys=b;return &gys;}int *gb(int a, int b){static int gbs;int *p;p=gy(a,b);gbs=a*b/(*p);return &gbs;}void main(){int a,b,*c,*d;printf("Please input two integer:\n");scanf("%d,%d",&a,&b);c=gy(a,b);d=gb(a,b);printf("The greatest common divisor is %d\nThe lease common multiple is %d",*c,*d);}。

C++指针编程二参考答案

C++指针编程二参考答案

指针编程练习二1.使用“指向数组的指针”完成:定义15*20的二维字符数组,随机生成300个a~z的字符并使用指针按行填入数组中。

统计各字母的出现次数并输入一个一维数组中。

输出这两个数组。

#include<iostream.h>#include<time.h>#include<stdlib.h>void main(void){char a[15][20],(*p)[20]=a;unsigned i,j,n[26]={0},*q=n;srand(time(0));for(i=0;i<15;i++){for(j=0;j<20;j++){cout<<(*(*(p+i)+j)=rand()%26+97);n[*(*(p+i)+j)-97]++;}cout<<endl;}for(i=0;i<26;i++)cout<<*q++<<' ';cout<<endl;}2.使用“返回值为指针的函数”求一维数组{1,3,9,5,8,4,2,6,10,7}中的最大值。

#include<iostream.h>unsigned a[10]={1,3,9,5,8,4,2,6,10,7};unsigned *m(unsigned *p){unsigned *q,*t=p,i;for(i=0,q=t;i<10;i++,t++)if(*q<*t)*q=*t;return q;}void main(void){cout<<*m(a);}3.定义求两浮点数加减乘除的四个函数,使用“指向函数的指针”调用这四个函数来计算24.9和3.6的加减乘除结果。

#include<iostream.h>float add(float a,float b){return a+b;} float sub(float a,float b){return a-b;} float mul(float a,float b){return a*b;} float div(float a,float b){return a/b;} void main(void){float (*p)(float,float);p=add;cout<<(*p)(24.9,3.6)<<' ';p=sub;cout<<(*p)(24.9,3.6)<<' ';p=mul;cout<<(*p)(24.9,3.6)<<' ';p=div;cout<<(*p)(24.9,3.6)<<' '; }。

指针测试题及答案大全

指针测试题及答案大全

指针测试题及答案大全一、选择题1. 指针变量的声明方式正确的是()。

A. int *p;B. int *p[];C. int *p[10];D. int (*p)[10];答案:A2. 指针变量可以存储()。

A. 整型数据B. 浮点型数据C. 函数名D. 任意类型的地址答案:D3. 指针变量的值是()。

A. 它所指向的变量的值B. 它所指向的变量的地址C. 它自己的值D. 它自己的地址答案:B4. 指针变量的类型转换时,以下说法正确的是()。

A. 可以将任何类型的指针转换为void指针B. 可以将void指针转换为任何类型的指针C. 可以将char指针转换为int指针D. 可以将int指针转换为char指针答案:A5. 指针变量的算术运算中,以下说法正确的是()。

A. 指针变量可以进行加法运算B. 指针变量可以进行减法运算C. 指针变量可以进行乘法运算D. 指针变量可以进行除法运算答案:B二、填空题1. 指针变量的值是它所指向的变量的________。

答案:地址2. 指针变量的类型转换时,可以将void指针转换为________类型的指针。

答案:任何类型3. 指针变量的算术运算中,指针变量可以进行________运算。

答案:减法三、简答题1. 描述指针变量与数组之间的关系。

答案:指针变量可以指向数组的首元素,从而可以通过指针访问数组中的所有元素。

数组名在大多数情况下可以作为指向数组首元素的指针使用。

2. 解释指针变量的类型转换规则。

答案:指针变量的类型转换遵循C语言的类型转换规则,可以将任何类型的指针转换为void指针,也可以将void指针转换为任何类型的指针。

但是,不同类型的指针之间不能直接转换,除非它们指向的数据类型是兼容的。

结束语:以上是指针测试题及答案大全,希望对您的学习有所帮助。

【高中物理】人教版必修第三册学案:第十一章-第五节-实验:练习使用多用电表

【高中物理】人教版必修第三册学案:第十一章-第五节-实验:练习使用多用电表

第十一章电路及其应用第五节实验:练习使用多用电表学习目标1.认识多用电表表盘刻度和各种测量功能,会根据测量需要正确选择档位。

2.通过实验操作学会使用多用电表测量电流、电压和电阻,牢记多用电表的使用注意事项。

3.会用多用电表测量二极管的正反电阻,能够判断二极管的正负极。

重点难点重点:1.认识多用电表表盘刻度和各种测量功能并选择正确的档位。

2.使用多用电表测量电流、电压和电阻。

3..会用多用电表测量二极管的正反电阻。

难点:1.会根据测量需要正确选择档位。

2.能够判断二极管的正负极。

自主探究一.认识多用电表表的上半部分为①,下半部分为②,开关周围有测量功能的区域和③。

二.使用多用电表在使用前都应先调节④,使指针指向左侧0刻度线。

使用时,先将选择开关旋钮调节到对应物理量,选择合适的⑤。

再把多用表连入电路中。

在多用表使用完毕后,需要把选择开关旋转到⑥位置。

1.测量小灯泡两端电压:首先把小灯泡、电源、开关、导线按连接要求安装好,调节多用表指针,并把选择开关旋转到测量电压的位置,根据电源电压选择合适的量程。

测量时用两只表笔分别接触灯泡两端的接线柱,注意⑦。

根据表盘上相应⑧的直流电压刻度进行读数,记录小灯泡两端的电压值。

2.测量通过小灯泡的电流:在直流电源对小灯泡正常供电的情况下,断开电路开关,把小灯泡的一个接线柱上的导线卸开。

将多用电表的选择开关旋至直流电流挡,注意选择⑨。

把多用电表从导线断开处⑩在电路中,注意电流应该从⑪流入多用电表。

闭合开关,根据表盘上相应量程的直流电流刻度进行读数,记录通过小灯泡的电流值。

3.测量电阻:测量电阻前,我们应该先进行欧姆调零:1.红、黑表笔⑫(红、黑表笔短接)2.调节“欧姆调零旋钮”,使表笔短接时,指针指向⑬刻度线。

注意:改变不同倍率时,都需要⑭欧姆调零。

使用多用电表的欧姆挡测电阻时,如果指针示数过大,则应⑮ 欧姆档的倍率;如果指针示数⑯ ,则应减小欧姆档的倍率,使测量时表针落在刻度盘的中间区域。

指针实验报告常见问题(3篇)

指针实验报告常见问题(3篇)

第1篇一、实验背景指针是C语言中非常重要的一个概念,它提供了对内存的直接访问,使得程序能够高效地操作数据。

在指针实验中,同学们可能会遇到各种问题。

本文将对指针实验中常见的几个问题进行总结和分析。

二、常见问题及解答1. 指针概念理解不清问题:如何理解指针的概念?解答:指针是存储变量地址的变量,通过指针可以访问内存中的数据。

简单来说,指针就是一个指向另一个变量的地址的变量。

2. 指针变量的定义和使用问题:如何定义指针变量,并使用它访问数据?解答:定义指针变量需要使用星号(),例如:int p;。

使用指针访问数据时,需要使用取地址符(&)和间接访问符()。

例如,访问指针p指向的变量a的值,可以使用p。

3. 指针与数组的关系问题:指针与数组有何关系?解答:数组名本身就是一个指向数组首元素的指针。

通过数组名可以访问数组元素,也可以通过指针操作数组元素。

4. 指针与函数的关系问题:指针在函数调用中有什么作用?解答:指针在函数调用中可以传递数据的地址,使得函数能够直接修改调用者的数据。

此外,指针还可以用于函数返回多个值。

5. 指针数组与指向数组的指针问题:指针数组与指向数组的指针有何区别?解答:指针数组是一组指针元素的集合,每个元素都存储一个变量的地址。

指向数组的指针是指向整个数组的指针,它存储的是数组的起始地址。

6. 字符指针与字符串操作问题:如何使用字符指针操作字符串?解答:字符指针可以指向字符串中的任意位置。

使用字符指针可以遍历字符串、获取字符串长度、比较字符串等。

7. 动态内存分配与释放问题:如何使用指针进行动态内存分配和释放?解答:使用malloc、calloc、realloc等函数进行动态内存分配,使用free函数释放内存。

8. 指针与指针运算问题:指针可以进行哪些运算?解答:指针可以进行加减运算、比较运算等。

加减运算用于移动指针,比较运算用于判断指针是否指向相同的地址。

9. 指针与递归函数问题:如何在递归函数中使用指针?解答:递归函数中使用指针可以方便地访问和修改调用者的数据。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验十一指针应用(二)
一、实验目的
1.了解指针与函数的关系并能够初步利用指针处理函数问题。

2.了解指向数组的指针的概念及其使用方法。

3.了解指向指针的指针的概念及其使用方法。

二、实验学时数
1学时
三、实验步骤
(一)阅读程序
#include <stdio.h>
#include <string.h>
fun(char *s)
{char a[7];
s=a;
strcpy(a,"look");
puts(s);
}
main()
{char *p;
fun(p);
2.#include <stdio.h>
main()
{int a[5]={2,4,6,8,10},*p,**pp;
p=a;
pp=&p;
printf("%d",*p++);
printf("%3d\n",**pp);
}
3. #include <stdio.h>
main()
{char *str[]={"Pascal","C language","Cobol","Dbase"};
char **p;
int k;
p=str;
for(k=0;k<4;k++)
printf("%s\n",*(p++));
4.
#include <stdio.h> main() {int a[2][3]={2,4,6,8,10,12},(*p)[3],i,j;
p=a;
scanf("%d,%d",&i,&j);
printf("a[%d][%d]=%d",i,j,*(*(p+i)+j));
}
(二)调试程序
要求:分析下列程序是否正确,如有错,错在哪儿?应如何改正?如正确,运行结果如何?上机调试之。

1.调试下列程序,使之具有如下功能:任意输入2个数,调用两个函数分别求:⑴ 2个数的和,⑵ 2个数交换值。

要求用函数指针调用这两个函数,结果在主函数中输出。

行号sum(int a,int b,int c)
1{ c=a+b;
2 return c;
3 }
4 swap(int a,int b)
5 { int t;
6 t=a;
7 a=b;
8 b=t;
9 printf("a=%d,b=%d\n",a,b);
10 }
11 main()
12 { int a,b,c,(*p)();
13 scanf("%d,%d",&a,&b);
14 p=sum;
15 c=*p (a,b,c);
16 p=swap;
17 *p(a,b);
18 printf("sum=%d\n",c);
19 printf("a=%d,b=%d\n",a,b);
20 }
{ c=a+b;
return c;
}
swap(int a,int b)
{ int t;
t=a;
a=b;
b=t;
printf("a=%d,b=%d\n",a,b);
}
main()
{ int a,b,c,(*p)();
scanf("%d,%d",&a,&b);
p=sum;
c=(*p)(a,b,c);
p=swap;
(*p)(a,b);
printf("sum=%d\n",c);
printf("a=%d,b=%d\n",a,b); }。

相关文档
最新文档