九千年矿泉水官网:一个简单的数组经典例题寻求讲解?

来源:百度文库 编辑:高考问答 时间:2024/05/04 15:04:38
有一个例子,今天听的很模糊,希望有人能帮忙,我知道讲解很费时间,所以我会给出相应的追加分,谢谢个位高手,我还想交些这方面的高手作为朋友,能在以后多多帮我,有心的请留下联系方式,QQ或邮 箱。
{
char a[10],b[10],c[12];
scanf("%s%s",a,b);
if(strcmp(a,b)>0)
printf("a>b");
{
strcpy(c,a);
strcpy(a,b);
strcpy(b,c);

}
printf("\na=%s\nb=%s",a,b);
}
我不知道算不算经典,可是还是想求助大家的帮助,再次谢谢拉!

{
char a[10],b[10],c[12];/*define array*/
scanf("%s%s",a,b); /*输入字符串a和b*/
if(strcmp(a,b)>0) /*如果strcmp(a,b)大于0 strcmp返回2字符串第一个不同的asc码值相减的值*/
printf("a>b"); /*输出a>b*/
{
strcpy(c,a); /*a先拷贝给c*/
strcpy(a,b); /*然后b拷贝给a*/
strcpy(b,c); /*然后吧c(就是原来a的东西)拷给b*/

}
printf("\na=%s\nb=%s",a,b); /*把ab交换后的值显示出来*/
}

先比较a,b,如果a,b不同,打印“a>b",strcpy是字符串拷贝,这个看不出哪点经典??

楼上的说的有点问题。
strcmp(a,b)>0 的意思是比较a,b两个字符串,从不同的那个字符计算它们的ascll码值,a大则a>b,b 大则a<b.