题目
在TeX中,左引号是"“",右引号是"”"。输入一篇包含双引号的文章,你的任务时把它转换成TeX的格式。
样例输入
"To be or not to be," quoth the Bard, "that is the question".
样例输出
“To be or not to be,” quoth the Bard, “that is a question”.
分析
关键,判断一个双引号是左引号还是右引号。方法很简单:使用一个标志变量即可。
但是,这种有空格的字符串,再使用scanf就不合适了,因为它遇到空格就停止了。
可以用fgetc(fin),它读取一个打开的文件fin,读取一个字符,然后返回一个int值。
如果要从标准输入读取一个字符,可以用getchar,它等价于fgetc(fin)。
c实现
代码语言:javascript复制#include<stdio.h>
int main()
{
int c,q=1;
while((c=getchar())!=EOF){
if(c == '"')
{
printf("%s",q?"“":"”");
q=!q;
}
else
{
printf("%c",c);
}
}
return 0;
}
//本题关键:1.如何判断一个引号是左引号还是 右引号。这里使用q作为标志变量
//2.输入字符串
//第一种方法:fgetc(fin),它读取一个打开的文件fin,读取一个字符,返回一个int值。
//从标准输入读取一个字符,可以用getchar ,它等价于fgetc(stdin).
//fgets(buf,maxn,fin)读取完整的一行