+ -
当前位置:首页 → 问答吧 → 给兄弟找找错吧

给兄弟找找错吧

时间:2011-12-07

来源:互联网

#include<iostream>
using namespace std;
const int n=100;
int main()
{char m(char b[]);
char a[n],b[n];
cout<<"enter a ";
cin>>a;
cout<<"enter b ";
cin>>b;
int i,j=0;
  
  for(i=0;i<n;i++)  
#include<iostream>

  { if(a[i]=='\0')

  a[i]=m(b[j]);}

  for(i=0;i<n;i++)
  cout<<a[i]<<'\0';

return 0;}
char m(char b[])
{int j;
for(j=0;j<n;j++)
return b[j];
}

作者: Smallearth   发布时间: 2011-12-07

你这代码乱得一塌糊涂 没法帮你找错

作者: sadgeminids   发布时间: 2011-12-08

不知所谓 你的代码不知道干啥的
C/C++ code

char m(char b[])
{int j;
for(j=0;j<n;j++)
return b[j];
}
//这个函数永远返回b[0]
a[i]=m(b[j]);
没有这种写法
a[i]=m(b);}



作者: hnuqinhuan   发布时间: 2011-12-08

你的代码确实让我们有点找不到北,呵呵。中间加上这句#include<iostream>是什么意思?你如果是想这样定义函数m()的,第一次这样看到的,不过很独特。稍微改一下:在m函数中对j这样定义static int j = 0;
最终还没明白你要完成什么样的功能,你的需求又是什么,这样让我们给你看看哪些地方需要改。

作者: cfjtaishan   发布时间: 2011-12-08

不好意思哈,我的意思是连接两个字符串。中间的#include<iostream>是小弟写错了,直接去掉。

作者: Smallearth   发布时间: 2011-12-09

[code=C/C++][/code]
#include<iostream>
using namespace std;
const int n=100;
int main()
{char m(char b[]);
char a[n],b[n];
cout<<"enter a ";
cin>>a;
cout<<"enter b ";
cin>>b;
int i,j=0;
   
  for(i=0;i<n;i++)  
  { if(a[i]=='\0') //等于'\0'就开始赋值的意思?除了输入的字符串外,其它的不需要赋值吧..
  a[i]=m(b[j]); //你自定义的m函数,形参是一个数组而不是一个元素吧?应该写成a[i]=m(b);
}
  for(i=0;i<n;i++)
  cout<<a[i]<<'\0';

return 0;}
char m(char b[])
{int j;
for(j=0;j<n;j++)
return b[j];
//这个函数只返回b[0]一个值,弄个循环做什么?
}

作者: destino74   发布时间: 2011-12-09

C/C++ code

#include<iostream>
using namespace std;
const int n=100;
int main()
{char m(char b[]);
char a[n],b[n];
cout<<"enter a ";
cin>>a;
cout<<"enter b ";
cin>>b;
int i=0,j=0;  
while(a[i]!='\0') 
 i++;                //循环结束时,i为a数组末尾.
while(b[j]!='\0')   
{a[i]=b[j];       
 i++;
 j++;                //从b[0]开始到b末尾开始把值赋给a
}                    
a[i]='\0';
for(i=0;i<strlen(a);i++) 
 cout<<a[i];

return 0;}

作者: destino74   发布时间: 2011-12-09

的确很乱!

作者: wxwlll   发布时间: 2011-12-09