一道C++编程题,求大神解决!!!!求代码。。。

输入一个字符串,存入数组a,将其复制到数组b,然后将数组b中所有小写字母改为大写字母,再将a中字符串连接到b。比较并输出a,b中的字符串的大小,最后输出a,b中的字符串。

要求:
(1)不能使用strcpy,strcat等字符串库函数。
(2)在子函数Converse()中进行大小写转换,在子函数Connect()中连接二个字符串,在子函数Compare()中比较二个字符串的大小。

例:
输入:abcdefg
输出:
字符串a:abcdefg
字符串b:ABCDEFGabcdefg
比较结果:a > b

2 个回答

http://zhidao.baidu.com/question/446180833.html?fr=fd

答案与评论均要看,可以解决的。
abcde
字符串a:abcde
字符串b:ABCDEabcde
a>b
Press any key to continue

include <stdio.h>

Converse(char t)
{
while (
t!='\0')
{
if (t>='a' && *t<='z')
{
*t-=32;
}
t++;
}
}
Connect(char *s, char *d)
{
while (
s++!='\0');
s--;
while ((s++=d++)!='\0');
}
int Compare(char s,char *d)
{
while(
s && d && (s == d))
{
s++;
d++;
}
return *s-
d;
}
main()
{
char p,s,a[20]={0},b[20]={0};
gets(a);
p=a;
s=b;
printf("字符串a:%s\n",a);
while ((s++=p++)!='\0');
Converse(b);
Connect(b,a);
printf("字符串b:%s\n",b);
if (Compare(a,b)>0)
puts("a>b");
else if (Compare(a,b)<0)
puts("a<b");
else
puts("a=b");
}

沧海雄风20092012-7-5 15:41
啊 手误 while(*p!='\0') { *s = *p; p++;s++; }

小兵上树2012-7-5 15:40
while后面的表达式什么意思啊,还能改么..运行出错errorC2100

沧海雄风20092012-7-5 15:29
while(*0!='\0') { *s = *p; p++;s++; }

小兵上树2012-7-5 15:19
while ((s++=p++)!='\0'); 这个怎么改的简单点回复沧海雄风20092012-7-4 09:19
几乎没什么区别 #include <iostream> using namespace std; 。。。。。。 字数限制 cout<<"字符串a:"<<a<<endl; cout<<"字符串b:"<<b<<endl; cout<<"a>b"<<endl; cout<<"a<b"<<endl; cout<<"a=b"<<endl;
能改成#include<iostream> using namespace std;这种代码的么,我们学的是这个的,帮帮忙吧。