2743: 指针的基本操作(2)
Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 321 Solved: 200
[ Submit][ Status][ Web Board]
Description
下面的程序,输入10 100和100 10,均可以输出max=100 min=10,请补充完整程序
#include <iostream>
using namespace std;
int main( )
{
int *p1,*p2,t;
//本程序以下不准再加入新的变量,下面用new操作符分配空间,并用p1、p2分别保存其地址
//下面输入两个整数。若无上面分配的空间,这样操作指赂的空间,极其危险
cin>>*p1>>*p2;
//下面加入的代码,只许出现p1,p2和t,不许出现a和b
cout<<"Max="<<*p1<<" Min="<<*p2<<endl; //p1和p2指向的分别是大值和小值,无论输入大小
//下面写释放p1和p2所指向空间的语句
return 0;
}
Input
两个整数
Output
按规定的格式,输出大值和小值
Sample Input
10 100
Sample Output
Max=100 Min=10
//void *malloc(unsigned int size);例如int*p=(int *)malloc(n*sizeof(int));向系统申请空间
//void *calloc(unsigned int num, unsigned int size);例如int *p=(int*)calloc(n,sizeof(int));按类型申请空间
//void *realloc(void *mem_address, unsigned int newsize);例如int *p=(int*)realloc(n+m,sizeof(int));重新申请分配空间
//这三个动态内存分配函数的头文件是#include<stdlib.h>
//free函数void free(void *p);例如free(p);形参p指向要释放的空间,p只能是以上三个动态内存分配函数所分配的空间地址
#include<iostream>
#include<cstdlib>
using namespace std;
int main( )
{int *p1,*p2,t;
//本程序以下不准再加入新的变量,下面用new操作符分配空间,并用p1、p2分别保存其地址
p1=(int *)malloc(sizeof(int));
p2=(int *)malloc(sizeof(int));
//下面输入两个整数。若无上面分配的空间,这样操作指赂的空间,极其危险
cin>>*p1>>*p2;
//下面加入的代码,只许出现p1,p2和t,不许出现a和b
if(*p1<*p2)
{
t=*p1;
*p1=*p2;
*p2=t;
}
cout<<"Max="<<*p1<<" Min="<<*p2<<endl; //p1和p2指向的分别是大值和小值,无论输入大小
//下面写释放p1和p2所指向空间的语句
free(p1);
free(p2);
return 0;
}