第1-7章C++面向对象程序设计_作业参考答案

更新时间:2023-06-19 21:19:18 阅读: 评论:0

第1章
1.2
【解答】
重点:标准输入输出库函数——标准输入输出流对象
#include <iostream.h>
int main()
{    char name[20];伸展
cout<<Hello!Whats your name?<<endl;
cin>>name;蛋黄肉粽
cout<<name<<,Welcome to learn OOP using C++!<<endl;
return 0;
}
1.3
const int model = 90;  // model is a const
const int v[ ]={1,2,3,4}; // v[i] is a const
const int x;                  // error: no initializer        未赋初值
void f( )
{
    model =200; // error    不能修改常量的值
    v[2]++;  // error     不能修改常量的值
}
【修改1】
const int model = 90;  // model is a const
const int v[ ]={1,2,3,4}; // v[i] is a const
const int x=0;                  //赋初值
void f( )
{
    cout<<model<<endl;         //修改常量的值
    cout<< v[2]<<endl          //修改常量的值
}
或者int temp=v[2]+1;
【修改2】
int *const model=90;
const int* v[]={1,2,3,4};
1.4  int strcmp(const char *, const char *);
【解答】确保函数strcmp不会修改参数指针所指向的变量
1.6
【解答】(讲义)
C++语言是强类型化语言,任何函数在使用以前必须有该函数的原型说明,以便进行实际参数与形式参数之间的类型匹配检查。
函数返回值的类型和函数参数的类型、个数、次序在函数声明,函数定义和函数调用时必须匹配。
时间的脚步C++语言的编译器执行上述检查能显著减少很多隐藏的错误。
使用函数原形执行强类型检查。任何函数在使用以前必须有该函数的原型说明,以便进行
实际参数与形式参数之间的类型匹配检查。函数返回值的类型和函数参数的类型、个数、次序在函数声明,函数定义和函数调用时必须匹配。如果某个函数的定义和调用与其原型不匹配,那么编译器会指出这种错误,而不用等到运行程序时才显示错误。
创建带有缺省参数的函数时,应注意:
1、缺省参数值应该代表最常使用的情况。如果在80~90%的时间里能用上缺省值,缺省参数才比较有意义。
2、如果给某个参数一个缺省值,那么其后的所有参数都需要赋给缺省值。
1.8
【解答】
#include <iostream>
using namespace std;
//Overload max( ) three ways  重载函数名max三次
int max(int a,int b);
long max(long a,long b);
double max(double a,double b);
int main()
儿童画怎么画{  int a1=3,b1=10;
long a2=123456,b2=567893;
double a3=2*10^6,b3=-12.34;
    cout<<"int"<<max(a1,b1)<<endl;
    cout<<"long"<<max(a2,b2)<<endl;
    cout<<"double"<<max(a3,b3)<<endl;    //使用相同的函数名求不同类型数据的绝对值
    return 0;
}
int max(int a,int b)
{  int c;
    a>b?c=a:c=b;
    return(c);
}
驰名long max(long a,long b)
{  long c;
    a>b?c=a:c=b;
    return(c);
}
double max(double a,double b)
{  double c;
    a>b?c=a:c=b;
    return(c);
}
1.9要点:申请动态数组
【解答】
// A simple example of new and delete.
#include <iostream>
#include <string>
using namespace std;
const int N=10;
int main( )
{    char *p,q;
    int i=0;
    p=new char[N];  //allocate memory for a array    为数组分配动态内存空间
    if(p==NULL)
    {      cout<<"Allocation error\n";
          return 1;
    }
    cin>>q;
    while(q!='#')
    {    p[i++]=q;
朴宰范照片
          cin>>q;
快餐达人
    } 
    cout<<endl<<"Here is name at p:  ";
    i=0; 
    while(i<N)
          cout<<p[i++];     
    cout<<endl;
    delete [] p;            // relea memory 释放new分配的动态内存空间
    return 0;
}
1.10
【解答】
#include <iostream.h>
void f(int a[ ],int n, int &max, int &min)
{
    max=min=a[0];
    for(int i=1;i<n;i++)
    {
        if(max<a[i]) max=a[i];
        if (min>a[i])  min=a[i];
    }
}
void main( )
{
    int a[10]={2,5,3,9,0,8,1,7,6,4};
    int max,min;

本文发布于:2023-06-19 21:19:18,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/fan/82/993670.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:函数   类型   参数   修改   错误   缺省
相关文章
留言与评论(共有 0 条评论)
   
验证码:
推荐文章
排行榜
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图