AT—入力フォーム 题解
题目传送门
更好的阅读体验?
做法:
-
可以边输入边判断。
-
程序在读入字符时,是一个一个读入的,依照这个性质可以读一个就判断一个,省去存储字符的麻烦。
-
每读入一个字符,
L 就减1 ,当L 为0 时就可以跳出循环(注意跳出时机)。 -
cin读入失败返回值为0 。 -
AT 的题最后要有换行(现在好像不加也行)。
无注释代码:
#include<bits/stdc++.h>
using namespace std;
int main()
{
char c;
int l;
cin>>l;
while(cin>>c)
{
if(l<=0) break;
l--;
cout<<c;
}
cout<<endl;
return 0;
}
有注释代码:
#include<bits/stdc++.h>
using namespace std;
int main()
{
char c;
int l;
cin>>l;//要求长度
while(cin>>c)
{
//只有一行字符,可以用 cin 读
//cin 读入失败返回值为 0
//还可以过滤行末回车
//getchar() 不行,需要特判
if(l<=0) break;
//如果长度够了,就跳出
l--;//长度减一
cout<<c;//输出字符
}
cout<<endl;//AT 的题最后要有换行
return 0;
}