作为一刚开始学习C语言的菜鸟,像我的名字一样菜。。。遇到不会的题经常到网上寻找答案,但不是每个人像我一样菜,都是大神的作品,我看都看不懂,只能搜寻很长时间才能找到一些能看懂的方法,然后自己埋头苦想。

不如把自己写好的发出来,和大家分享一下。

绝对入门水平,请多多指教。

[POJ NOI0107-16 忽略大小写比较字符串大小。](http://noi.openjudge.cn/ch0107/16/)

描述

一般我们用strcmp可比较两个字符串的大小,比较方法为对两个字符串从前往后逐个字符相比较(按ASCII码值大小比较),直到出现不同的字符或遇到'\0'为止。如果全部字符都相同,则认为相同;如果出现不相同的字符,则以第一个不相同的字符的比较结果为准(注意:如果某个字符串遇到'\0'而另一个字符串还未遇到'\0',则前者小于后者)。但在有些时候,我们比较字符串的大小时,希望忽略字母的大小,例如"Hello"和"hello"在忽略字母大小写时是相等的。请写一个程序,实现对两个字符串进行忽略字母大小写的大小比较。

输入

输入为两行,每行一个字符串,共两个字符串。(每个字符串长度都小于80)

输出

如果第一个字符串比第二个字符串小,输出一个字符"     如果第一个字符串比第二个字符串大,输出一个字符">";

如果两个字符串相等,输出一个字符"="。

样例输入
**Hello, how are you?
hello, How are you?**
样例输出
**=**
话不多说,上代码。最基础的。嘻嘻
#includeint main()
{
char a[1000],b[1000];//两个数组存储字符串
int i;
gets(a);//获取字符串
gets(b);
for(i=0;i<1000;i++)//从第一个元素开始判断,将大写转化成小写
{
if((a[i]>='a'&&a[i]<='z'&&b[i]<='Z'&&b[i]>='A')||
(a[i]>='A'&&a[i]<='Z'&&b[i]<='z'&&b[i]>='a'))
{
if(a[i]>='a'&&a[i]<='z'&&b[i]<='Z'&&b[i]>='A')
/如果是第二个数组中有元素为大写,转化成小写/
b[i]+=32;
else //对第一个数组转化
a[i]+=32;
}
//进行比较
if(a[i]=='\0' && b[i]=='\0')//到最后一直一样
{
printf("=");
break;}
else //否则
{
if(a[i]>b[i])//第一个大
{
printf(">");
break;}
else
if(a[i]

第一次写,比较乱,见笑了。