求助:如何用两个字符替换一个字符?
如下代码中第一个if语句中用两个感叹号替换原输入字符中的一个感叹号,过于复杂,如何简化编程?程序代码:
#define NUM 500 int main(void) { int i, j, n; char ch[NUM*2]; i=j=0; while ((ch[i]=getchar())!='#') //#结束 { if (ch[i] == '!') //用两个感叹号代替一个感叹号 { ch[i] = '!'; for(n=NUM;n>=i;n--) ch[n+1] =ch[n]; ch[i+1]= '!'; putchar(ch[i]); putchar(ch[i+1]); j++; } else if (ch[i] == '.') //用一个感叹号代替句号 { ch[i] = '!'; putchar(ch[i]); j++; } else putchar(ch[i]); } printf("\n%5d\n", j); //替换了几次 system("pause"); return 0; }
[此贴子已经被作者于2019-12-1 21:55编辑过]