c语言三道题12.23

1、改错:


(a)、void test1()
    {
        char string[10];                          //string[10]改为string[11]
        char *str1 = "0123456789";
        strcpy(string, str1);
    }


(b)、void test2()
    {
        char string[10], str1[10];          //string[10]改为string[11]
        for (i=0; i<10; i++)
        {
            str1[i] = 'A';
        }
        strcpy(string, str1);
    }


(c)、void test3(char *str)
                                                           //*str改为*str1 
    {
        char string[10];
        if (strlen(str1)<=10)
                                           //strlen(str1)<=10改为strlen(str1)<10
        {
            strcpy(string, str1);
        }
    }


2、找赛手:2个羽毛球队比赛,各出3人,每个人只比一次。甲队为A,B,C三人,乙队为X,Y,Z三人。有人打听比赛名单,A说他不和X比,C说不和X,Z比。编程找出三队赛手的名单.


#include


void main(void)
{
    char A,B,C;
char X,Y,Z;
    if(C != 'X' && C != 'Z')
        C = 'Y';
    if(A != 'X' && C == 'Y')
        A = 'Z';
    if(A == 'Z' && C == 'Y')
        B = 'X';
    printf("A VS %c, B VS %c, C VS %c\n", A, B, C);
}



3、用C语言实现字符串中子字符串的替换, 成功返回0,失败返回-1.例如:“ABCDEFG”这个字符串,把其中"BCD"替换成“9527”这个子串,结果变成:“A9527EFG”

函数原型:

int str_replace(char *str, char * replaced_str, char *new_str)

不会。。

你可能感兴趣的:(c)