标题:自定义字符串程序(老是出错,就是不懂哪里有错,求大神们指点一下)
只看楼主
ecssse
Rank: 1
等 级:新手上路
帖 子:16
专家分:2
注 册:2014-3-29
结帖率:66.67%
已结贴  问题点数:20 回复次数:6 
自定义字符串程序(老是出错,就是不懂哪里有错,求大神们指点一下)
#include<stdio.h>
void strcat(char s1[],char s2[]);
void strcmp(char s1[],char s2[]);
void strcpy(char s1[],char s2[]);
void strlen(char s1[],char s2[]);
void main()
{
    char s1[20],s2[20];
    printf("please 1th string:");
    scanf("%s",&s1);
    printf("please 2th string:");
    scanf("%s",&s2);
    strcat(s1,s2);
    strcmp(s1,s2);
    strcpy(s1,s2);
    strlen(s1,s2);
   
}

void strcat(char s1[],char s2[])
{
    int i,j;
    char s[40];
    for(i=0;s1[i]!='\0';i++)
    {
        s[i]=s1[i];
    }
    for(j=i+1;s2[j]='\0';j++)
    {
        s[i+j]=s2[j];
    }
    printf("\n");
    printf("连接后的两串字符为:%s",s);
}

void strcmp(char s1[],char s2[])
{
    int i;
    for(i=0;s1[i]!='\0',s2[i]!='\0';i++)
    {
        if(s1[i]>s2[i])
            printf("strcmp<s1,s2>=1\n");
        if(s1[i]<s2[i])
            printf("strcmp<s1,s2>=-1\n");
        if(s1[i]=='\0'&&s1[i]==s2[i])
            printf("strcmp<s1,s2>=0\n");
    }
}

void strcpy(char s1[],char s2[])
{
    int i;
    s2[i]=s1[i];
    printf("s1复制到s2后的字符串:");
    printf("%s\n",s2);
}

void strlen(char s1[],char s2[])
{
    int i;
    int a=0,b=0;
    for(i=0;*s1!='\0';s1++)
    {
        a++;
    }
    for(i=0;*s2!='\0';s2++)
    {
        b++;
    }
    printf("a=%d,b=%d\n",a,b);
}
搜索更多相关主题的帖子: include please 字符串 
2014-06-16 13:55
wp231957
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:神界
等 级:版主
威 望:422
帖 子:13681
专家分:53296
注 册:2012-10-18
得分:7 
具体哪个函数出错  你这里编译时有明显的提示  使用了未初始化的变量

DO IT YOURSELF !
2014-06-16 14:13
砖家的谎言
Rank: 12Rank: 12Rank: 12
等 级:禁止访问
威 望:30
帖 子:693
专家分:3898
注 册:2013-12-6
得分:7 
报的是什么错呢

我不是砖家,要努力成为砖家。
2014-06-16 15:06
ecssse
Rank: 1
等 级:新手上路
帖 子:16
专家分:2
注 册:2014-3-29
得分:0 
回复 2 楼 wp231957
没有报错,就是程序直接运行到最后一个函数,不能输入!直接由a、b的值。
2014-06-17 11:31
ecssse
Rank: 1
等 级:新手上路
帖 子:16
专家分:2
注 册:2014-3-29
得分:0 
回复 3 楼 砖家的谎言
没有报错,就是程序直接运行到最后一个函数,不能输入!直接由a、b的值。。
2014-06-17 11:32
ditg
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:16
帖 子:852
专家分:1937
注 册:2014-4-10
得分:7 
你最好还是信了楼上的话,否则怎么解释strcpy里的i?

另外,strcat里j的初值以及s2[j]的条件测试怎么解读?strlen里i的作用?都用上指针了,前面的知识可别欠太多的账,顺便提醒一下,对于函数及其功能的理解多体会一下,除了正确性以外再考虑一下通用性,呵呵

梦想拥有一台龙芯3A-4000
2014-06-17 16:50
ditg
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:16
帖 子:852
专家分:1937
注 册:2014-4-10
得分:0 
对了,再提醒一下,input 1st、2nd

梦想拥有一台龙芯3A-4000
2014-06-17 16:56



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




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

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