文字配列の各スペースを「%20」に置き換える関数を実装します.例えば「we are happy.」と入力し、「we%20 are%20 happy」と出力

2059 ワード

#include 
#include 
int main()
{
    char a[20] = "we are happy";//       
    char *p = a;
    int count = 0;
    while ((*p != '\0'))
    {
        if (*p == ' ')
        {
            count++;//     
        }
        p++;
    }
    char *i = p - 1;
    char *j = i + count * 2;
    while (i <= j)
    {
        if (*i != ' ')
        {
            *j-- = *i--;
        }
        else
        {
            *j-- = '0';
            *j-- = '2';
            *j-- = '%';
            i--;
        }
    }
    printf("%s
"
,a); system("pause"); return 0; }