/* * Copyright (c) 2014, 烟台大学计算机学院 * All rights reserved. * 文件名称:test.cpp * 作 者:刘畅 * 完成日期:2014 年 12 月 17 日 * 版 本 号:v1.0 * * 问题描述:设计一个程序,输入三个整数,将其从大到小的顺序输出,要求 (1)排序功能通过函数实现,三个整数用三个变量,不必定义数组; (2)写出两个版本的函数,一个采用传地址值的方法,另一个采用引用类型作参数。 * 输入描述:三个整数, * 程序输出:将这三个整数从大到小输出。
#include <iostream> using namespace std; void exchange(int *q1,int *q2,int *q3); void swap(int *p1,int *p2); int main() { int *num1,*num2,*num3,a,b,c; cin>>a>>b>>c; num1=&a; num2=&b; num3=&c; exchange(num1,num2,num3); cout<<a<<" "<<b<<" "<<c; } void exchange(int *q1,int *q2,int *q3) { if (*q1<*q2) swap (q1,q2); if (*q1<*q3) swap(q1,q3); if (*q2<*q3) swap(q2,q3); } void swap(int *p1,int *p2) { int temp; temp=*p1; *p1=*p2; *p2=temp; }
运行结果:
学习心得:
指针最基础的写法格式上感觉已经掌握了,不过还是不大理解指针的用处,能提高效率但不知道如何去提高的,还得多看看书啊。
还有一个引用类作参数的版本着实还不会,待明天请教老师后再补上。求有大神能先指点指点引用类型做参数是怎么去应用的?
时间: 2024-10-12 21:28:28