标题:编一个程序 不用strcmp函数 这个有点缺陷 就是字符不相等的时候 有点问题
只看楼主
xufan123
Rank: 5Rank: 5
等 级:职业侠客
帖 子:226
专家分:318
注 册:2010-11-15
结帖率:100%
已结贴  问题点数:20 回复次数:3 
编一个程序 不用strcmp函数 这个有点缺陷 就是字符不相等的时候 有点问题
#include<string.h>
#include<stdio.h>
main()
{
int i,s=0,j;
char a[10],b[10];
gets(a);
gets(b);
for (i=0;a[i]!='\0';i++)
{j=a[i]-b[i];
s=s+j;}
printf("the number is %d",s);
}
这个只是A的字符组长的时候可以 但B的字符长就不行了 不道怎么解决啊 ???、
搜索更多相关主题的帖子: strcmp 函数 缺陷 字符 
2010-12-07 21:31
五当家
Rank: 12Rank: 12Rank: 12
等 级:火箭侠
威 望:2
帖 子:1112
专家分:3674
注 册:2010-10-20
得分:10 
#include<string.h>
#include<stdio.h>
main()
{
int i,s=0,j;
char a[10],b[10];
gets(a);
gets(b);
for (i=0;i<10;i++)        //这里改动
{
    if(a[i]!='\0')
    {
    j=a[i]-b[i];
    s=s+j;
    }
    else                //这里改动.
    {
        j=-b[i];
        s=s+j;
    }
   
}
printf("the number is %d\n",s);
}
这样就应该是你想要的了吧,你看看行不行.

经验积累中............
2010-12-07 21:48
outsider_scu
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:3
帖 子:430
专家分:1333
注 册:2010-10-21
得分:10 
程序代码:
#include<string.h>
#include<stdio.h>
main()
{
int i,s=0,j;
char a[10],b[10];
gets(a);
gets(b);
for (i=0;a[i]&&b[i];i++)
{
    j=a[i]-b[i];
    s=s+j;
}
while(a[i]) {  s+=a[i]; i++;}   //处理剩余部分。
while(b[i]) {  s-=b[i]; i++;}  
printf("the number is %d",s);
}

编程的道路上何其孤独!
2010-12-07 21:48
xufan123
Rank: 5Rank: 5
等 级:职业侠客
帖 子:226
专家分:318
注 册:2010-11-15
得分:0 
#include<string.h>
#include<stdio.h>
main()
{
int i,s=0,j;
char a[10],b[10];
system("cls");
printf("please input array a:\n");   
gets(a);
printf("please input array b:\n");
gets(b);   
for (i=0;(strlen(a)>=strlen(b))&&a[i]!='\0';i++)
{j=a[i]-b[i];
s=s+j;}
for (i=0;(strlen(a)<strlen(b))&&b[i]!='\0';i++)
{j=a[i]-b[i];
    s=s+j;}
printf("the number is %d",s);
}
 这个是好的了 呵呵
2010-12-08 11:38



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-328288-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.879170 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved