问题是输入一行以#结尾并且含()的字符,如:djdushh(dhdh)sjsj#
对其进行处理,删去()及括号内字符和#,输出结果。如:djdushhsjsj
我的程序是:
#include
int main()
{char a[100];
int i=0;
do{scanf("%c",&a[i]);
i++;
}while(a[i]!='#');
i=0;
do{
if(a[i]=='(') do{i++;
}while(a[i]!=')');
else{
printf("%c",a[i]);
i++;
}
}while(a[i]!='#');
}
得不到东西,为什么?
输入的时候直接判断跳过括号内容
int main()
{
char a[100] = {0}, ch;
int i = 0, flag = 0;
;
while ((ch = getchar()) != '#')
{
if (ch == '(')
{
flag = 1;
continue;
}
if (ch == ')')
{
flag = 0;
continue;
}
if (flag == 0)
a[i++] = ch;
}
printf("%s", a);
}