第七周C++作业

1.调试分析课本每一个例题,有可能的话更改成2-3个方法的新程序;

/*************说明实参求值的顺序***************/
#include<iostream>
using namespace std;

int ncomp(int i,int j)
{
	if(i>j)return 1;
	if(i==j)return 0;
	return -1;

}
int main()
{
	int k=2;
	int n=ncomp(k,++k);
	cout<<n;
	return 0;
}
/*这题答案为零,证明系统按右向左顺序求实参的值,又如:
int i = 10;   printf("%d %d %d\n", ++i, i, --i);
问输出的结果是什么.解答说按规定,printf的参数从右向左执行,
原因是参数一般为从右往左压栈的.先从栈顶取数据,
所以从右向左求值并压栈是有他的道理的**********/

/*************比较两个数大小,输出较大的数**************/
#include<iostream>
using namespace std;

int max(int u,int v)
{
	int w;
	w=u>v? u:v;
	return w;

}
int main()
{
	int a,b,c;
	cout<<"please input two numbers: ";
	cin>>a>>b;
	c=max(a,b);
	cout<<"a= "<<a<<" b= "<<b<<endl;
	cout<<"max is "<<c<<endl;

	return 0;
}

/*************用引用调用的方法实现两个数据互换**************/
#include<iostream>
using namespace std;

void swap(int &u, int &v);

int main()
{
	int a=3;
	int b=4;
	cout<<"a = "<<a<<"\tb = "<<b<<endl;
	swap(a,b);
	cout<<"a = "<<a<<"\tb = "<<b<<endl;

	return 0;
}
void swap(int &u,int &v)
{
	int temp=v;
	v=u;
	u=temp;
}
/*****引用调用是把变量的地址传进去,函数内对引用的操作就是对
函数外部变量的操作。指针调用其实是把指针变量又拷贝了一份给函
数,只有在函数内部修改指针所指向的值才会对起外部指针产生影响,
要是把传进来的指针的地址变了,对函数外面指针指向的值没有影响。
引用和指针不要混淆了****************************************/

/*********void类型中return语句的作用**************/
#include<iostream>
using namespace std;

void display(int x,float y)
{
	cout<<x<<" "<<y;
	return;   //这
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值