c 语言 交换两个变量的值

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

1. 交换两个变量的值:用两种方法:

1) main () (3-5-1a(3-5-1b)

printf(“a,b=?”“a,b=?”);

scanf(“%d,%d”“%d,%d”,&a,&b);

pringf(“a=%d\tb=%d\n”“a=%d\tb=%d\n”,a,b) ;

t=a;a=b;b=t; a=a+b;b=a-b;a=a-b;

pringf(“a=%d\tb=%d\n”,a,b); pringf(“a=%d\tb=%d\n”,a,b);

} /*利用第三变量*/ } /*利用自身*/

3) 利用全局变量交换两个变量的值:

int a=3,b=7; Qj-swap2

main()

{ swap ()

printf("%d,%d\n",x,y);

}

swap()

{ a=a+b;b=a-b;a=a-b}

4)利用指针变量交换两个变量的值:

main ()

{ int a=3,b=10,*pa=&a,*pb=&b;

clrscr();

printf("a=%d\tb=%d\n",a,b);

swap (pa,pb);

printf("a=%d\tb=%d\n",*pa,*pb);

}

swap (int *x,int *y)

{ int *t;

t=*x;*x=*y;*y=t;

}

4)下列程序运行的结果:

(1)int x=1,y=2; Qj-swap1

main ()

{ int a=3,b=4;

move(x,y);move(a,b);

printf("%d, %d, %d, %d",x,y,a,b);

}

move(int p,int q)

{ int k ;

k=p;p=q;q=k;

}

(2)int x=1,y=2; 全局main ()

{ int a=3,b=4;

move(x,y);move(a,b);

printf("%d, %d, %d, %d",x,y,a,b);

}

move(int x,int y) x,y 局部的

{ int k ;

k=x;x=y;y=k;

}

(3) int x=30,y=50;

sub(x,y)

{ y=x>y?x:y;

return y;

}

main ()

{ int x=100;

clrscr();

printf("sub(x,y)=%d\n",sub(x,y));

printf("x=%d\ty=%d\n",x,y);

}

(4)程序填空

Vodi swap( ①__ int *a, int *b _ ) A卷 p162

{ int t;

t=*a;

②__ *a=*b __ ;

③____ *b=t ___ ;

}

main( )

{ int a,b;

scanf(″%d,%d″,&a,&b);

④____swap(&a,&b)___ ;

printf(″a=%d,b=%d″,a,b);

}

2.求半径为 10的圆的面积。(例1-3-12)

main ()

{ float r,s; /* 定义两个实型变量*/

clrscr(); /* 清屏幕*/

r=10; /* 给半径变量 r赋值 */

s=3.14159*r*r; /*用公式计算圆的面积s 的值*/

printf("r=%f\tarea=%f\n",r,s); /* 输出 r和s的值*/

}

float sy(float x)

{ float s;

s=3.14159*x*x;

return s;

}

3.求多边形(五边形)的面积(三个的三角形面积之和)(3-5-7)

#include "math.h" b

main() c f { float a=2.3,b=3,c=3,d=2,e=2.5,f=2,g=1.4; e g float p1,p2,p3,s3,s1,s2; a

p1=(a+b+c)/2;s1=sqrt(p1*(p1-a)*(p1-b)*(p1-c)); d

p2=(c+d+e)/2;s2=sqrt(p2*(p2-c)*(p2-d)*(p2-e));

p3=(e+f+g)/2;s3=sqrt(p3*(p3-e)*(p3-f)*(p3-g));

printf("a=%f\tb=%f\tc=%f\tarea1=%f\n",a,b,c,s1);

printf("c=%f\td=%f\te=%f\tarea2=%f\n",c,d,e,s2);

printf("e=%f\tf=%f\tg=%f\tarea3=%f\n",e,f,g,s3);

printf("area total=%f\n",s1+s2+s3);

}

#include "math.h" 函数形式

main()

{ float area() /*函数声明*/

float a=2.3,b=3,c=3,d=2,e=2.5,f=2,g=1.4,st;

st= area(a,b,c)+ area(c,d,e)+ area(e,f,g);

printf("area total=%f\n",st);

}

float area(a,b,c)

float a,b,c;

{ float p,s;

p=(a+b+c)/2;

s=sqrt(p1*(p-a)*(p-b)*(p-c));

return s

}

调用上述函数,求阴影部分的面积(圆的面积-三角形的面积)(3-5-8)

#include "math.h"

main()

{ float a=2.3,b=3,c=3,r=10;

float p, ,s2,s;

s=sy(r)-area(a,b,c);

printf("r=%f\terae2=%f\n",r,s2);

printf("area total=%f\n",s2-s1);

}

3.英文大小写转换(3-5-11)。

#include

相关文档
最新文档