钱能C++教材习题答案八



文件信息
文件来源  
文件作者  
更新时间 2005-5-8 10:46:18 
添加编辑 viewsnake 

辅助信息
打印功能 打印本文
背景颜色 杏黄 秋褐 胭红 芥绿 天蓝 雪青 炭灰 奶白
字体大小 特大号字 大号字 中号字 小号字
免责声明 本网站所有文章均来自网络,仅提供预览形式,不提供纸张形式,若涉及到版权的文章,请购买正版,毕竟在电脑上看也不舒服啊,呵呵,这是viewsnake个人网站,纯粹交流学习资料的地方。无商业行为。
选择更多免费考研资料:
阅读正文内容
//*************
//*     8.8   *
//*************
# include <iostream.h>
# include <math.h>
# include <D3DRMDEF.H>
# include <iomanip.h>
long a[25];

long * turn(long * x,int y);

void main()
{
        int i;
        for(i=1;i<25;i++)
                a=rand();
        for(int l=1;l<25;l++)
        {
                cout<<setw(10)<<a[l-1]<<",";
                if(l%5==0)
                        cout<<endl;
        }

cout<<endl<<endl;
        long * b=turn(a,25);

        for(int m=1;m<25;m++)
        {
                cout<<setw(10)<<b[m-1]<<",";
                if(m%5==0)
                        cout<<endl;
        }

cout<<endl<<endl;
}

long * turn(long * x,int y)
{
        long * m=new long[y];

                for(int j=0;j<y;j++)
                {
                        m[j]=x[(j%5)*5+j/5];
                }
        return m;
}

 

//******************************
//*     8.9                    *
//*i=615852\cability:246341200 *
//******************************
# include <iostream.h>

void main()
{
        int m;
        int * p;
        long i=0;
        do
        {
                p=new int[100];
                ++i;
                cout<<i<<",";
        }while(p != NULL);
        m=sizeof(int)*100*(i+1);
        cout<<"cability:"<<m<<endl;

}

第9章

//*************
//*     9.1   *
//*************
//(1)

# include <iostream.h>

const size=10;

void findmax(int * & a,int n, int i,int & pk);//

void main()
{
        int a[size];
        int n=0;
        cout<<"please input"<<size<<"datas:\n";
        for(int i=0;i<size;i++)
        {
                cin>>a;
        }
        int * p=a;//
        int * & q=p;//

        findmax(q,size,0,n);

        cout<<"the maximum is"<<a[n]<<endl
                <<"Its index is"<<n<<endl;
}

void findmax(int * & a,int n, int i,int & pk)//
{
        if(i<n)
        {
                if(a>a[pk])
                        pk=i;
                findmax(a,n,i+1,pk);//
        }
}

//(2)在输入10个int数后,通过findmax查找最大数及其位置,并打印。
//(3)

# include <iostream.h>

const size=10;

void findmax(int * & a,int m,int & pk);//

void main()
{
        int a[size];
        int n=0;
        cout<<"please input "<<size<<" datas:\n";
        for(int i=0;i<size;i++)
        {
                cin>>a;
        }
        int * p=a;//
        int * & q=p;//

        findmax(q,size,n);

        cout<<"the maximum is: "<<a[n]<<endl
                <<"Its index is: "<<n<<endl;
}

void findmax(int * & a,int m,int & pk)//
{
       
        for(int j=0;j<m;j++)
        {
                if(a[j]>a[pk])
                        pk=j;
        }
}


//*************
//*     9.2   *
//*************
# include <iostream.h>

int & put(int n);
int get(int n);

int vals[10];
int error=-1;

void main()
{
        put(0)=10;
        put(1)=20;
        put(9)=30;

        cout<<get(0)<<endl;
        cout<<get(1)<<endl;
        cout<<get(9)<<endl;

        put(12)=1;
}

int & put(int n)
{
        if((n<0)||(n>9))
        {
                error=1;
                cout<<"range error in put() value!";
                return error;
        }
        else
                return  vals[n];
}

int get(int n)
{
        int m=vals[n];
        return m;
}


//*************
//*     9.3   *
//*************
# include <iostream.h>
void exchange(char * & a,char * & b);

char* ap="hello";
char* bp="how are you?";

void main()
{
        cout<<ap<<endl;
        cout<<bp<<endl;
        exchange(ap,bp);
        cout<<ap<<endl;
        cout<<bp<<endl;
}

void exchange(char * & a,char * & b)
{
        char * p=a;
        a=b;
        b=p;
}



<<<返回上一页 <<<返回网站首页
<<<您的位置:首页>考研经验>考研笔记>计算机工程笔记>正文