1 //实现两变量的值进行互换
2 short num_v1 = 20;
3 short num_v2 = 40;
4
5 void change_middle()
6 {
7 //借助中间变量
8 short temp;
9
10 temp = num_v1;
11
12 num_v1 = num_v2;
13
14 num_v2 = temp;
15 }
16 void change_2()
17 {
18 //不借助中间变量
19 num_v1 = num_v1 + num_v2;//v1=20,v2=40->20+40->v1=60,v2=40
20 num_v2 = num_v1 - num_v2;//v1=60,v2=40->60-40->v1=60,v2=20
21 num_v1 = num_v1 - num_v2;//v1=60,v2=20->60-20->v1=40,v2=20
22 }
23 void change_3()
24 {
25 //不借助中间变量
26 num_v1 = num_v1 * num_v2;//v1=20,v2=40->20*40->v1=80,v2=40
27 num_v2 = num_v1 / num_v2;//v1=80,v2=40->80/40->v1=80,v2=20
28 num_v1 = num_v1 / num_v2;//v1=80,v2=20->80/20->v1=40,v2=20
29
30 }
31 void main()
32 {
33
34 printf("before:num_v1=%d,num_v2=%d", num_v1, num_v2);
35
36 //change_middle();
37 //change_2();
38 change_3();
39 putchar('\n');
40 printf("after:num_v1=%d,num_v2=%d", num_v1, num_v2);
41
42 getchar();
43
44
45 }