C语言:指定字符替换怎么做?

给定一个不超过80个全部由大写字母构成的字符串,要求把里面所有“ZH",替换为“#$”后输出。 第一行是一个整数n, 然后是n行不超过80长度的字符串。 输出替换后的字符串。 如: 2 AABDAED ZZHASSZHDZ 替换后为: AABDAED Z#$ASS#$DZ

遍历去匹配,然后替换对应的字符就行了。

#define <span class="hljs-built_in">N</span> <span class="hljs-number">20</span>
<span class="hljs-built_in">int</span> main()
{
    <span class="hljs-built_in">char</span> str[<span class="hljs-built_in">N</span>][<span class="hljs-number">80</span>];
    <span class="hljs-built_in">int</span> i,j,<span class="hljs-built_in">n</span>;
    printf(<span class="hljs-string">"请输入字符串数量:"</span>);
    scanf(<span class="hljs-string">"%d"</span>,&<span class="hljs-built_in">n</span>);
    printf(<span class="hljs-string">"请输入%d行字符串:"</span>,<span class="hljs-built_in">n</span>);
    for(i=<span class="hljs-number">0</span>;i<<span class="hljs-built_in">n</span>;i++)
        scanf(<span class="hljs-string">"%s"</span>,str[i]);
    for(i=<span class="hljs-number">0</span>;i<<span class="hljs-built_in">n</span>;i++)
    {
       <span class="hljs-built_in">int</span> <span class="hljs-built_in">len</span>  = strlen(str[i]);
       for(j=<span class="hljs-number">0</span>;j<<span class="hljs-built_in">len</span>-<span class="hljs-number">1</span>;j++)
       {
           <span class="hljs-built_in">if</span>(str[i][j] == 'Z' && str[i][j+<span class="hljs-number">1</span>] == 'H')
           {
               str[i][j] = '#';
               str[i][j+<span class="hljs-number">1</span>] = '$;
           }
       } 
    }
    for(i=<span class="hljs-number">0</span>;i<<span class="hljs-built_in">n</span>;i++)
        printf(<span class="hljs-string">"%s\n"</span>,str[i]);
}