C++ Primer Plus 第五版 第七章复习题

                  C++ Primer Plus 第五版 第七章复习题 4
            编写一个接受3个参数的函数,指向数组中第一个元素的指针,指向数组最后一个元素后面的一个指针 以及一个int值,
            并将数组中所有元素设置为这个int值.
 
  1. #include <iostream>
  2. using namespace std;
  3. void SetArray(int *ArrFirst,int *ArrEnd,int Set);
  4. void main()
  5. {
  6.     cout <<"begin/n";
  7.     int Arr[5]={1};
  8.     for (int i=0;i<5;++i)
  9.     {
  10.         cout <<i+1<<" : "<<Arr[i]<<endl;
  11.     }
  12.     SetArray(Arr,Arr+5,10);
  13.     for (i=0;i<5;++i)
  14.     {
  15.         cout <<i+1<<" : "<<Arr[i]<<endl;
  16.     }
  17.     cout <<Arr[5]<<endl;        //....
  18. }
  19. void SetArray(int *ArrFirst,int *ArrEnd,int Set)
  20. {
  21.     int *Now;
  22.     Now=ArrFirst;
  23.     int i=0;
  24.     while (Now !=ArrEnd)
  25.     {
  26.         cout <<i<<"  ";
  27.         *Now=Set;
  28.         ++Now;
  29.     }
  30.     cout <<endl;
  31. }

                第七章编程练习 5

                    编写将 double 数组名和长度作为参数,并返回该数组中最大值的函数.该函数不应该修改数组的内容.

 

  1. #include <iostream>
  2. using namespace std;
  3. const int ArrMax=5;
  4. double SelectTheMaxNumber(const double *Arr,int Max);
  5. void main()
  6. {
  7.     double Arr[ArrMax]={-4534,-223,-265434,-544,-7768};
  8.     double ArrT[ArrMax]={4534,223,265434,544,7768};
  9.     double MaxNumber=SelectTheMaxNumber(Arr,ArrMax);
  10.     cout <<"The Max Number is "<<MaxNumber<<endl;
  11.     MaxNumber=SelectTheMaxNumber(ArrT,ArrMax);
  12.     cout <<"The Max Number 2 is "<<MaxNumber<<endl;
  13.     return;
  14. }
  15. double SelectTheMaxNumber(const double *Arr,int Max)
  16. {
  17.     double MaxNumber=*Arr;      //设置初始值为数组第一个元素
  18.     for (int i=1;i<Max;++i)     //起始为1  跳过第一个元素 从第二个元素开始
  19.     {
  20.         if (Arr[i]>MaxNumber)
  21.         {
  22.             MaxNumber=Arr[i];
  23.         }
  24.     }
  25.     return MaxNumber;
  26. }

 

                        第七章复习题8

                    编写一个函数其原型如下,

                    int replace(char *str,char c1,char c2);

                        该函数将字符串中所有c1都替换成c2,并返回替换次数

  1. #include <iostream>
  2. using namespace std;
  3. int Replace(char *str,char c1,char c2);
  4. void main()
  5. {
  6.     char str[50]="oosadrordsorewfwofwo/0";  //...至今搞不懂 为啥 这里改成 char *str 内存就访问出错了
  7. //  char *str="oosadrordsorewfwofwo/0";
  8.     int CiShu=Replace(str,'o','A');
  9.     cout <<str<<endl;
  10.     cout <<"次数" <<CiShu<<endl;
  11.     return;
  12. }
  13. int Replace(char *str,char c1,char c2)
  14. {
  15.     int Num=0;
  16.     while (*str!=0)
  17.     {
  18.         if (*str==c1)
  19.         {
  20.             ++Num;
  21.             *str=c2;
  22.         }
  23.         ++str;
  24.     }
  25.     return Num;
  26. }
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值