📄 ch5-3.c
字号:
/*程序功能:使用指针变量作函数调用的实参,升序输出2个整数*/
/******************************************************/
/*exchange()功能:交换2个形参指针变量所指向的变量的值 */
/*形参:2个,均为指向整型数据的指针变量 */
/*返回值:无 */
/******************************************************/
#include<stdio.h>
#include<reg51.h>
void exchange(int *pointer1, int *pointer2)
{ int temp;
temp=*pointer1, *pointer1=*pointer2, *pointer2=temp;
}
/*主函数main()*/
void main(void)
{ int num1,num2;
int *num1_p=&num1, *num2_p=&num2; /*定义并初始化指针变量num1_p和 num2_p */
#ifndef MONITOR51
SCON = 0x50; /* SCON: mode 1, 8-bit UART, enable rcvr */
TMOD |= 0x20; /* TMOD: timer 1, mode 2, 8-bit reload */
TH1 = 221; /* TH1: reload value for 1200 baud @ 16MHz */
TR1 = 1; /* TR1: timer 1 run */
TI = 1; /* TI: set TI to send first char of UART */
#endif
printf("\n Input the first number: "); scanf("%d",num1_p);
printf("\n Input the second number: "); scanf("%d",num2_p);
printf("\n num1=%d, num2=%d ", num1, num2); /*输出num1和num2的初始值*/
if( *num1_p > *num2_p ) /* *num1_p > *num2_p (即num1>num2)*/
exchange(num1_p, num2_p); /*指针变量作实参,调用exchange()函数*/
printf("\n min=%d, max=%d\ ", num1, num2); /*输出排序后的num1和num2的值*/
while(1);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -