第二周项目1 c/c++语言中函数参数传递的三种方式

来源:互联网 发布:创业软件官网 编辑:程序博客网 时间:2024/05/16 11:23
/*Copyright (c) 2015,烟台大学计算机学院All rights reserved.文件名称:test.cpp作者:孙彩虹完成日期:2015年09月07日版本号:v1.0问题描述:C/C++语言中函数参数传递的三种方式输入描述:两个待交换的值程序输出:交换后的两个值*///(1)传值#include<stdio.h>void myswap(int x, int y){    int t;    t=x;    x=y;    y=t;}int main(){    int a, b;    printf("请输入待交换的两个整数:");    scanf("%d %d", &a, &b);    myswap(a,b);  //分三个程序,分别写上调用myswap的合适形式    printf("调用交换函数后的结果是:%d 和 %d\n", a,b);    return 0;}


运行结果:

 

这个不能实现数据的交换。

 

//(2)传地址#include<stdio.h>void myswap(int *p1, int *p2){    int  t;    t=*p1;    *p1=*p2;    *p2=t;}int main(){    int a, b;    printf("请输入待交换的两个整数:");    scanf("%d %d", &a, &b);    myswap(&a,&b);    printf("调用交换函数后的结果是:%d 和 %d\n", a,b);    return 0;}


运行结果:

如此实现了交换。

//(3)引用作形参#include<stdio.h>void myswap(int &x, int &y){    int t;    t=x;    x=y;    y=t;}int main(){    int a, b;    printf("请输入待交换的两个整数:");    scanf("%d %d", &a, &b);    myswap(a,b);    printf("调用交换函数后的结果是:%d 和 %d\n", a, b);    return 0;}


运行结果:

 

0 0
原创粉丝点击