正文

C++ 第6章指针 6.2.2 引用指针变量[续]2008-09-30 13:17:00

【评论】 【打印】 【字体: 】 本文链接:http://blog.pfan.cn/yzrj/38579.html

分享到:

  图6.7 例6.2 输入a和b两个整数,按先大后小的顺序输出a和b(用指针变量处理)。 解此题的思路是: 设两个指针变量p1和p2,使它们分别指向a和b。使p1指向a和b中的大者,p2指向小者,顺序输出*p1,*p2就实现了按先大后小的顺序输出a和b。按此思路编写程序如下:   #include <iostream> using namespace std; int main( ) { int *p1,*p2,*p,a,b; cin>>a>>b;                             //输入两个整数 p1=&a;                                 //使p1指向a p2=&b;                                 //使p2指向b if(a<b)                                //如果a<b就使p1与p2的值交换 {p=p1;p1=p2;p2=p;}                    //将p1的指向与p2的指向交换 cout<<″a=″<<a<<″ b=″<<b<<endl; cout<<″max=″<<*p1<<″ min=″<<*p2<<endl; return 0; } 运行情况如下:   4578↙ a=45 b=78 max=78 min=45 输入a的值45,b的值78,由于a<b,将p1的值和p2的值交换,即将p1的指向与p2的指向交换。交换前的情况见图6.8(a),交换后的情况见图6.8(b)。   请注意,这个问题的算法是不交换整型变量的值,而是交换两个指针变量的值。

阅读(1412) | 评论(0)


版权声明:编程爱好者网站为此博客服务提供商,如本文牵涉到版权问题,编程爱好者网站不承担相关责任,如有版权问题请直接与本文作者联系解决。谢谢!

评论

暂无评论
您需要登录后才能评论,请 登录 或者 注册