uva 272
来源:互联网 发布:开源cms系统 php商城 编辑:程序博客网 时间:2024/06/11 14:51
题目大意:
就是输入一长串,再输出一长串,其中某些特殊符号需要变一下,具体是啥,自己去题目网址去看;
基本思路:
输入是个问题,这里用getchar读一个出一个,然后也可以用fgets个gets,下面我都写一遍;还有个问题就是这个符号并不在ascii码表里,所以就用字符串输出,我也不知道为啥用字符串就能输出,反正以后遇到类似的用字符串试一下就好了;
代码如下:
getchar:
getchar是空格和回车(不同操作系统可能不同)都能都进去并且读出来;
然后学着这个flag的学法也不错,很容易想到;
这是这三种方法里面最快的!!!!!
#include<bits/stdc++.h>
int main()
{
int flag=0;
char c;
while((c=getchar())!=EOF)
{
if(c=='"')
{
printf("%s",flag ? "''" : "``");
flag=!flag;
}
else putchar(c);
}
return 0;
}
gets:
注意gets这个它是不会输出回车的记得自己换行;
然后这个用奇偶性还是很不错的,可以学一下,之所以能用奇偶性是应为也是对应着这两种状态;
#include<bits/stdc++.h>
char s[100000+10];
int main()
{
int num=0;
while(gets(s)!=NULL)
{
int l=strlen(s);
for(int i=0;i<l;i++)
{
if(s[i]=='"')
{
if(num%2==0)
printf("%s","``");
else printf("%s","''");
num++;
}
else putchar(s[i]);
}
printf("\n");
}
return 0;
}
fgets:
fgets这个用法很值得学一学,就是三个参数,第一个一般就是一个char型数组,其他也可以,第二个参数就是最多都进去多少个该类型的元素,第三个就是读入方式,一般标准读入就是stdin,还有文件是fstream(输入输出都是);
#include<bits/stdc++.h>
char s[100000+10];
int main()
{
int num=0;
while(fgets(s,10000,stdin)!=NULL)
{
int l=strlen(s);
for(int i=0;i<l;i++)
{
if(s[i]=='"')
{
if(num%2)
printf("%s","''");
else printf("%s","``");
++num;
}
else putchar(s[i]);
}
}
return 0;
}
- UVA UVa 272 水题
- uva-272
- UVa 272
- UVa-272
- uva 272
- UVA-272
- UVA 272
- uva 272
- uva 272
- UVA 272
- Uva 272 - TEX Quotes
- UVa 272 - TEX Quotes
- UVA 272 - TEX Quotes
- uva 272 - TeX Quotes
- UVa 272 TEX Quotes
- UVa 272 - TEX Quotes
- UVA 272 - TEX Quotes
- UVA-272 TEX Quotes
- PID校正仿真分析
- windows网络编程之重叠模型(OVERLAPPED I/O)基础知识
- mac os 安装thrift
- 手机如何扫描识别车牌
- MBProgressHUD-Determinated Mode重绘代码.
- uva 272
- Android开发之Canvas及高级使用
- 面向对象
- python写算法题:leetcode: 15. 3Sum
- Jquery实现回到顶部
- JAVA中子类与父类相互转换
- 解决MAVEN web工程的版本问题
- python-03
- 商品无限分类