头大了头大了 2021-10-22 16:56 采纳率: 76.9%
浏览 52
已结题

C++语言问题合集(10个)

1.阅读程序,写出结果。

#include<iostream.h>

void main( )

{ int *p; int * &rp=p;

int n=100;

p=&n;

cout<< “n=”<<n<<endl;

cout<< “*p=”<<*p<<endl;

cout<< “*rp=”<<*rp<<endl;

if( rp=p)

cout<<”the addresses of rp and p are equal!”<<endl;

else

cout<<”the addresses of rp and p are not equal!”<<endl;

}
2.阅读程序,写出结果。

#include<iostream.h>

char str[20]=”Hello World!”;

char & ref(int a)

{

return str[a];

}

void main( )

{ ref(5)= ‘_’;

cout<<str<<endl;

}
3.阅读程序,写出结果。

#include<iostream.h>

int f(int a)

{

return ++a; }

int g(int &a)

{ return ++a;

}

void main( )

{ int m=0,n=0;

m+=f(g(m));

n+=f(f(n));

cout<<”m=”<<m<<endl;

cout<<”n=”<<n<<endl;

}
4.以下函数用来在x数组中插入a值,x数组中的数据已由小到大顺序存放,指针n所指内存单元中存放数组中数据的个数,插入后数组中的数据仍有序。请填空。

void fun(char *x , char a, int * n)

{ int k , p=0;

x[*n]=a;

while(a>x[p])

 _____________;

for(k=*n ; k>p ; k--)

 x[k]=____________;

x[p]=a;

++*n;

}
5.若给f函数的形参m传递字符串“□□□4321cde”( □表示空格),则函数的返回值是_____________。

long f( char m[ ])

{ long a;

 int  s;

 while( *m==‘ ’||*m==‘\t’||*m==‘\n’)

           m++;

 s=(*m==‘-’?-1:1);

 if(*m==‘+’||*m==‘-1’)

          m++;

 for(a=0;*m>= ‘0’&&*m<= ‘9’; m++)

         a=10*a+(*m-‘0’);

 return s*a;

}
6.函数m(x,n)计算并返回具有n个元素的数组x中的最小元素下标。请填空。

int m(int * x, int n)

{ int i=0,j;

for(j=0;j<n;j++)

    if(x[j]<x[i])

      ________________;

 return i;

}

7.阅读以下程序,写出程序的功能。

void f(int x, int y[ ])

{ int a=0 , b;

do

{  b=x%2;

   y[a++]=b;

   x/=2;

  }while(x);

}

8.写出下面程序的运行结果

#include<iostream.h>

int x;

void funA( int & , int );

void funB(int , int &);

int main( )

{ int first;

int  second=5;

x=6;

funA(first, second);

cout<<first<< “ ”<<second<< “ ”<<x<<endl;

funB(first ,second)

cout<< first<< “ ”<<second<< “ ”<<x<<endl;

return 0;

}

void fun A( int &a , int b)

{ int first;

first=b+12;

a=2*b;

b=first+4;

}

void funB(int u , int &v)

{ int second;

second=x;

v=second+4;

x=u+v;

}
9.阅读程序,找出程序中的错误,并说明错误原因。

int & Fun( int index , int a[ ])

{ int r=a[index];

return r;

}
10.阅读程序,找出错误并说明原因。

#include<iostream.h>

int Fun( int x, int y=10)

{

return x+y;

}

int Fun( int a)

{

return a*a;

}

void main( )

{

cout<<Fun(5)<<endl;

}

  • 写回答

2条回答 默认 最新

  • 关注

    1

    n=100
    *p=100
    *rp=100
    the addresses of rp and p are equal!
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 11月4日
  • 已采纳回答 10月27日
  • 提问应符合社区要求 10月22日
  • 创建了问题 10月22日

悬赏问题

  • ¥30 ansible连接设备报错
  • ¥60 pmsampsize包取值问题
  • ¥15 波形合成电路的设计学习
  • ¥15 unity脚本挂不上
  • ¥15 数学建模数学建模需要
  • ¥20 Java Sound Api 调用Mixer.getLine偶现Line unsupported错误。
  • ¥15 使用cuda加速opencv运算但是报错AttributeError: module 'cv2.cuda' has no attribute 'getCudaEnabledDeviceCount'
  • ¥15 java输入输出异常
  • ¥15 三子连珠对弈小游戏制作
  • ¥15 C++扑克牌游戏的编程