关于字符串 大小比较问题

来源:百度知道 编辑:UC知道 时间:2024/05/06 15:06:46
第一个问题..是不是第一个字符谁大,,然后就这个字符串谁大?
如果不是,,下面就不需要看了,,就是我理解错意思了...

第二个问题
这是书上的程序
#include<stdio.h>
void main()
{
char a[100],b[100],k=' ';
int i=0;
scanf("%s",a);
scanf("%s",b);
while((a[i]!='\0')&&(b[i]!='\ 0'))
if(a[i]<b[i])
{ k='b';break; }
else if(a[i]>b[i])
{ k='a';break; }
else i++;
if(k==' ')
if(a[i]=='\ 0'&&b[i]=='\ 0')
k='e';
else if(a[i]=='\ 0') k='b';
else k='a';
if(k=='a')
printf("%s>%s\n",a,b);
else if(k=='b')
printf("%s>%s\n",b,a);
else printf("%s=%s\n",a,b);
}

我应为感觉太麻烦了,又难理解就自己按自己的方法写了个.
#include<stdio.h>
void main()
{
char h[100],g[100],k;
int a,b=0,c;
scanf

#include<stdio.h>
void main()
{
char h[100],g[100],k;
int a,b=0,c;
scanf("%s",h);
scanf("%s",g);
for(a=0;a<100;a++)
{
if(h[a]>g[a])
{ printf("\n%s>%s",h,g);b=1;break; }
else if(h[a]<g[a])
{ printf("\n%s>%s",g,h);b=1;break; }
else { b=0;break; }
}
if(b==0)
printf("\n%s=%s",h,g);
}

好像确实是第一个字符大了就大,与后面的就没有关系了.
看while语句里if条件语句中,满足条件就break跳出while语句了,就打印结果了。

确实是第一个字符大了就大.
你的程序在我的机器上跑没有问题啊,只是字符长度不能超过99