题目大意:
题目原文:http://uva.onlinejudge.org/external/2/272.pdf
将所给的文字中的引号转化成前引号和后引号。
解题思路:
一句话中,一个前引号,后面一个一定是后引号,后引号后面一个是前引号。。。
所以我们只需要一个字符一个字符读取数据,没碰到引号的话按原本输出,如果是引号,则判断一下前一次出现引号是前引号还是后引号,然后输出。。。
碰到回车符号的时候也输出一个回车即可。单双引号要分开判断。。。
参考代码:
View Code
1 #include<stdio.h> 2 int main() 3 { 4 char c; 5 int b1=1,b2=1; 6 while(scanf("%c",&c)!=EOF) 7 { 8 if(c=='\"') 9 { 10 if(b1==1) printf("``"); 11 else printf("\'\'"); 12 b1=-b1; 13 } 14 else if(c=='\'') 15 { 16 if(b2==1) printf("`"); 17 else printf("\'"); 18 b2=-b2; 19 } 20 else printf("%c",c); 21 } 22 return 0; 23 }