问题及代码:
#include <iostream>
using namespace std;
int main( )
{
int *p1,*p2,a,b,t;
cin>>a>>b;
p1=&a;
p2=&b;
//下面加入的代码,只许出现p1,p2和t,不许出现a和b
if(*p1<*p2)
{
t=*p1;
*p1=*p2;
*p2=t;
}
cout<<"Max="<<a<<" Min="<<b<<endl;
return 0;
}
运行结果:
知识点总结:
虽然要求在补充的地方不能出现a和b,但是弄清楚定义之后明白p1和p2分别储存了a与b的地址,那么*p1与*p2就分别代表了a和b,整个程序就简单了
学习心得:
刚开始接触指针,还没到难的地方,现在唯一要做的就是通过不断练习加深对指针概念的理解与灵活运用。