这个程序底错在哪里????
# include <iostream>
using namespace std;
void fun(char* ss)
{
int i,n;
n=strlen(ss);
for(i=1;i<n;i+=2)
if(ss[i]='a'&&ss[i]<='z')
ss[i]=ss[i]-32;
else
ss[i]=ss[i];
cout<<ss;
}
int main()
{
fun("abc4EFg");
return 0;
}
# include <iostream> #include <cstring> using namespace std; void fun(char* ss) { int i=0,n=0; n=strlen(ss); for(i=1;i<n;i+=2) { if(ss[i]>='a'&&ss[i]<='z')ss[i]-=32;//你原码为的+32我不知道是什么意思,为了能跑出来,我变成了-,这样就是把偶数位处的字符小写变大写 } cout<<ss; } int main() { char a[]="abc4EFg"; fun(a); //fun("abc4EFg");这种调用方式不行,因为没有传入一个可以用的行参.... return 0; }