《C++程序设计(第2版)》ch14_习题课v2.ppt
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《《C++程序设计(第2版)》ch14_习题课v2.ppt》由会员分享,可在线阅读,更多相关《《C++程序设计(第2版)》ch14_习题课v2.ppt(34页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、计算机程序设计第第614章习题课章习题课杨琦杨琦计算机教学实验中心计算机教学实验中心西安交通大学西安交通大学第第6章指针章指针l习题习题6-1 用指针重新编写冒泡排序程序。用指针重新编写冒泡排序程序。l习题习题6-2 编写程序,将某一个输入的位数不确定的正整数编写程序,将某一个输入的位数不确定的正整数按照标准的三位分节格式输出,例如,当用户输入按照标准的三位分节格式输出,例如,当用户输入82668634时,程序应该输出时,程序应该输出82,668,634。l习题习题6-3 编写程序,把编写程序,把10个整数个整数1、2、10赋予某个赋予某个int型数组,然后用型数组,然后用int型指针输出该数
2、组元素的值。型指针输出该数组元素的值。l习题习题6-4 用指针编写一个程序,当输入一个字符串后,要用指针编写一个程序,当输入一个字符串后,要求不仅能够统计其中字符的个数,还能分别指出其中大、求不仅能够统计其中字符的个数,还能分别指出其中大、小写字母、数字以及其他字符的个数。小写字母、数字以及其他字符的个数。第第6章指针章指针l习题习题6-5 编写一个函数编写一个函数,用于将一个字符串转换为用于将一个字符串转换为整型数值。其原型为整型数值。其原型为:int atoi(char*string);l习题习题6-6 编写一个函数,用于生成一个空白字符编写一个函数,用于生成一个空白字符串,其原型为串,其
3、原型为:char*mystrspc(char*string,int n);习题习题6-1冒泡排序程序冒泡排序程序lvoid bubble_up(int*ptr,int count)llfor(int i=0;ii;j=j-1)lif(*(ptr+j-1)*(ptr+j)llint tmp=*(ptr+j-1);l*(ptr+j-1)=*(ptr+j);l*(ptr+j)=tmp;llptr为指针为指针int main()const int COUNT=16;int listCOUNT=503,87,512,61,908,170,897,275,653,426,154,509,612,677,7
4、65,703;bubble_up(list,16);cout The result is:endl;for(int i=0;i16;i+)cout listi ;coutendl;return 0;习题习题6-2 l例如,当用户输入例如,当用户输入82668634时,程序应该输出时,程序应该输出82,668,634。int main()int num;char array50;char*ptr=array;coutnum;int k=0;while(num!=0)*ptr=num%10+0;num=num/10;ptr+;k+;if(k%3=0)*ptr=,;ptr+;*ptr=0;strre
5、v(array);cout该整数按照标准的三位分节格式输出为:该整数按照标准的三位分节格式输出为:;coutarray=0&*string0)ll*string=;lstring+;ln-;ll*string=0;lreturn ptr;lint main()char*str;int n;coutn;str=new charn;cout“n结果如下,注意结果如下,注意观察观察#之间的空格数之间的空格数:nendl;cout#mystrspc(str,n)#endl;cout;for(int i=0;in;i+)couti%10;coutendl0,计算,计算Xk。l习题习题7-2 Ackerm
6、ann函数函数ack(m,n)由以下递归定由以下递归定义:义:l习题习题7-3 使用递归算法编写求斐波那契数列的第使用递归算法编写求斐波那契数列的第n项的函数,并编出主函数进行验证。项的函数,并编出主函数进行验证。第第7章章 函数与指针函数与指针l习题习题7-4 编写一个求立方的函数编写一个求立方的函数cube,并重载它,使之可,并重载它,使之可以对输入的整型量和实型量数值求立方。以对输入的整型量和实型量数值求立方。l习题习题7-5 重载判断两个数值大小的函数重载判断两个数值大小的函数max,这些数值可,这些数值可能是整型数、实型数和字符型,函数的返回值为两个数值能是整型数、实型数和字符型,函
7、数的返回值为两个数值中的最大值。中的最大值。l习题习题7-6 编写一个函数,用于去掉字符串尾部的空格符,编写一个函数,用于去掉字符串尾部的空格符,其原型为其原型为:lchar*mytrim(char*string);l习题习题7-7 编写一个函数,用于去掉字符串前面的空格,其编写一个函数,用于去掉字符串前面的空格,其原型为原型为:lchar*myltrim(char*string);第第7章章 函数与指针函数与指针l习题习题7-8 编写一个程序,当输入一个整数以后,编写一个程序,当输入一个整数以后,可以转换成相应的英文单词输出。如:可以转换成相应的英文单词输出。如:123转换成转换成one h
8、undred twenty three。l习题习题7-9 用牛顿法或者二分法编写一个求方程用牛顿法或者二分法编写一个求方程f(x)=0在区间在区间a,b中的实根的函数中的实根的函数,其原型为其原型为:double equation(double(*func)(double),double a,double b,double eps);习题习题7-2#includeusing namespace std;int ack(int m,int n)if(m=0)return n+1;else if(n=0)return ack(m-1,1);return ack(m-1,ack(m,n-1);结果:
9、结果:ack(0,0)=1ack(2,3)=9ack(2,4)=11习题习题7-mytrim(char*string);char*mytrim(char*string)char*ptr=string;while(*ptr!=0)ptr+;doptr-;while(*ptr=);*(+ptr)=0;return string;int main()char str=The art of computer programming ;cout 截取前的原始字符串是截取前的原始字符串是:strendl;cout 截取空格后的字符串是截取空格后的字符串是:mytrim(str);return 0;习题习题
10、7-7 myltrim(char*string);lchar*myltrim(char*string)llchar*ptr=string;lwhile(*ptr=)lptr+;lstrcpy(string,ptr);lreturn string;l第第8章章 结构化设计方法结构化设计方法l1输入某小组输入某小组5个人的姓名、性别、出生年份等信息,统计男女人数个人的姓名、性别、出生年份等信息,统计男女人数以及以及1988年以后(含年以后(含1988年)出生的人数。年)出生的人数。l2定义一个名为定义一个名为Circle(圆)的结构体,其数据成员是圆的外接矩形(圆)的结构体,其数据成员是圆的外接矩
11、形的左上角和右下角两点的坐标,计算该圆的面积。的左上角和右下角两点的坐标,计算该圆的面积。l3读入读入5个用户的姓名和电话号码,按姓名的字典顺序排列后,输出个用户的姓名和电话号码,按姓名的字典顺序排列后,输出每个用户的姓名和电话号码。每个用户的姓名和电话号码。l4口袋中有红、黄、蓝、白、黑五种颜色的小球若干个。如果每次口袋中有红、黄、蓝、白、黑五种颜色的小球若干个。如果每次都从口袋中取出都从口袋中取出3个不同颜色的小球,共有多少种组合,请打印出每个不同颜色的小球,共有多少种组合,请打印出每种组合的种组合的3种颜色。要求使用枚举类型来表示小球的颜色。种颜色。要求使用枚举类型来表示小球的颜色。l5
12、用自顶向下、逐步求精的程序设计方法找出用自顶向下、逐步求精的程序设计方法找出210000之内的所有之内的所有完全数(所谓完全数,即其各因子之和正好等于本身的数。如完全数(所谓完全数,即其各因子之和正好等于本身的数。如6=1+2+3,28=1+2+4+7+14,所以,所以6,28都是完全数)都是完全数)第第9章章 类和对象类和对象 l习题习题9-1设计一个设计一个Dog类,包含类,包含name、age、sex和和weight等属性以及对这些属性操作的方法。实等属性以及对这些属性操作的方法。实现并测试这个类。现并测试这个类。l习题习题9-2设计并测试一个名为设计并测试一个名为Ellipse的椭圆类
13、,其的椭圆类,其属性为外接矩形的左上角与右下角两个点的坐标,属性为外接矩形的左上角与右下角两个点的坐标,并能计算出椭圆的面积。并能计算出椭圆的面积。l习题习题9-3仿照仿照Date类设计一个类设计一个Time类,可以设类,可以设置时间、进行时间的加减运算、按各种可能的格置时间、进行时间的加减运算、按各种可能的格式输出时间。式输出时间。习题习题9-1设计一个设计一个Dog类类l#include l#include lusing namespace std;lclass Doglstring name;intage;char sex;lfloat weight;lpublic:lDog(strin
14、g Name,int Age,char Sex,float Weight);lstring GetName()return name;lint GetAge()return age;lchar GetSex()return sex;lfloat GetWeight()return weight;lvoid Speak()coutArf!Arf!endl;l;Dog:Dog(string Name,int Age,char Sex,float Weight)name=Name;age=Age;sex=Sex;weight=Weight;int main()Dog dog1(ahuang,3,m,
15、2.4);coutDogs name:dog1.GetName()endl;coutDogs age:dog1.GetAge()endl;coutDogs sex:dog1.GetSex()endl;coutDogs weight:dog1.GetWeight()endl;coutDog speak:;dog1.Speak();return 0;习题习题9-3设计一个设计一个Time类类lclass Timellint hour,minute,second;lpublic:lint SecCalc();lTime(int h=0,int m=0,int s=0);/构造函数构造函数lvoid
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C+程序设计第2版 C+ 程序设计 ch14_ 习题 v2
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内