C++第16周项目4——指来指去

课程首页地址:http://blog.csdn.net/sxhelijian/article/details/7910565

【项目4-指来指去】设计一个程序,利用指针完成下面的工作
(1)下面的程序,输入10 100和100 10,均可以输出max=100 min=10,请补充完整

#include <iostream>
using namespace std;
int main( )
{
	int *p1,*p2,a,b,t;
	cin>>a>>b;
	p1=&a;
	p2=&b;
	//下面加入代码,只许用p1,p2和t,不许用a和b,t作为交换时的中间变量

	cout<<"max="<<a<<" min="<<b<<endl;
	return 0;
}

参考解答:

#include <iostream>
using namespace std;
int main( )
{
	int *p1,*p2,a,b,t;
	cin>>a>>b;
	p1=&a;
	p2=&b;
	//下面加入代码,只许用p1,p2和t,不许用a和b,t作为交换时的中间变量
	if(*p1<*p2)
	{
		t=*p1;
		*p1=*p2;
		*p2=t;
	}
	cout<<"max="<<a<<" min="<<b<<endl;
	return 0;
}

(2)下面的程序将调用函数进行变量的交换,请设计出交换的函数

#include <iostream>
using namespace std;
int main( )
{
	int a,b;
	cin>>a>>b;
	jiaohuan(&a,&b);
	cout<<"交换后:a="<<a<<" b="<<b<<endl;
	return 0;
}
//下面定义jiaohuan;

参考解答

#include <iostream>
using namespace std;
void jiaohuan(int *p1, int *p2);
int main( )
{
	int a,b;
	cin>>a>>b;
	jiaohuan(&a,&b);
	cout<<"交换后:a="<<a<<" b="<<b<<endl;
	return 0;
}
//下面定义jiaohuan;
void jiaohuan(int *p1, int *p2)
{
	int t;
	if(*p1<*p2)
	{
		t=*p1;
		*p1=*p2;
		*p2=t;
	}
	return;
}
时间: 2024-10-06 19:19:44

C++第16周项目4——指来指去的相关文章

2013-C++第16周项目参考解答链接集

课程主页在:http://blog.csdn.net/sxhelijian/article/details/11890759 [项目2-指来指去]设计一个程序,利用指针完成下面的工作(1)下面的程序,输入10 100和100 10,均可以输出max=100 min=10,请补充完整程序 #include <iostream> using namespace std; int main( ) { int *p1,*p2,a,b,t; cin>>a>>b; p1=&

C++第16周项目2——带姓名的成绩单(字符数组版)

课程首页地址:http://blog.csdn.net/sxhelijian/article/details/7910565 [项目2-带姓名的成绩单(字符数组版)](参考15周项目3)设score数组中存储同学们的C++成绩,增加一个数组char name[][20]并赋初值,表示同学们的姓名(注意:本周不使用更方便的string类).这两个数组中,同学的姓名与成绩的下标保持一致(例如name[1]和score[1]表示同一位同学的姓名和C++成绩).请(1)输出按成绩排序后的同学的名单:(2

2014秋C++第16周 项目 指针和数组、函数

课程主页在http://blog.csdn.net/sxhelijian/article/details/39152703,课程资源在云学堂"贺老师课堂"同步展示,使用的帐号请到课程主页中查看.  [项目1-数组的排序]按给定部分程序的要求,用指向数组的指针变量作为形式参数编写函数,完成排序.重点体会:(1)排序算法,可以是冒泡,也可以是选择:(2)用指向数组的指针变量作为形式参数,用数组名(即数组的地址)作为实际参数,函数中对于形参的改变实质上也就是对实参对应内存单元的改变:(3)形

2014秋C++第16周 项目2参考 用指针玩字符串

课程主页在http://blog.csdn.net/sxhelijian/article/details/39152703,课程资源在云学堂"贺老师课堂"同步展示,使用的帐号请到课程主页中查看.  [项目2-用指针玩字符串] 指针是神奇的,指向整型的指针int *p1,可以操作整型数组int a[]:指向字符型的指针char *p2,可以操作字符数组(字符串)char str[]:更灵活的是,在函数的传递中,指针.数组名在一定程度上可以互换.请编制函数,对字符串的进行各种操作. 序 功

2014秋C++第16周 项目1参考 数组的排序

课程主页在http://blog.csdn.net/sxhelijian/article/details/39152703,课程资源在云学堂"贺老师课堂"同步展示,使用的帐号请到课程主页中查看.  [项目1-数组的排序]按给定部分程序的要求,用指向数组的指针变量作为形式参数编写函数,完成排序.重点体会:(1)排序算法,可以是冒泡,也可以是选择:(2)用指向数组的指针变量作为形式参数,用数组名(即数组的地址)作为实际参数,函数中对于形参的改变实质上也就是对实参对应内存单元的改变:(3)形

2013级C++第16周项目——初识指针

课程主页在:http://blog.csdn.net/sxhelijian/article/details/11890759 第一部分 程序分析 阅读下面的程序,先写出其运行结果,再运行对比. 读不懂怎么办?支招1:按课堂上老师讲课的方式,将变量对应内存的"框子"画出来,用大脑当CPU,写出变量的变化过程:支招2:单步执行程序,在监视(watch)窗口中观察变量的动态变化,从而掌握程序的运行机理.(1) #include <iostream> using namespace

C++第16周项目5——填空学指针

课程首页地址:http://blog.csdn.net/sxhelijian/article/details/7910565 [项目5-填空学指针]采用指针访问方式从键盘给数组a[N]输入数据,然后对元素值重新按逆序存放并输出.请补充完整下面的程序. #include <iostream> using namespace std; const int N=8; int main() { int a[N],*p,*q; for(p=a; p<a+N; p++) ___(1)___; p=a

2014秋C++第16周 项目3参考 用函数指针调用函数

课程主页在http://blog.csdn.net/sxhelijian/article/details/39152703,课程资源在云学堂"贺老师课堂"同步展示,使用的帐号请到课程主页中查看.  [项目3-用函数指针调用函数] 将下面的程序补充完整(包括定义函数),使其能够完成图示的功能.请使用已有程序的风格. void eat(); void sleep(); void hitdoudou(); void run(void (*f)()); int main() { int iCh

C++第16周项目4 -处理C++源代码 - (1)有没有main函数?

课程首页地址:http://blog.csdn.net/sxhelijian/article/details/7910565,本周题目链接:http://blog.csdn.net/sxhelijian/article/details/9078413 [项目4]写处理C++源代码的程序 (1)读入一个C++程序,判断其中是否只有一个main()函数,输出"暂时没有发现问题",或者"没有main()函数",或者"不能定义多个main()函数": 提