C++刷题:笔记和坑

①cin>>输入与cin.get();
cin>>,不会接收空格,回车,换行
cin.get()会获取回车,所以在C++中,如果需要通过回车判定输入结束,需要使用cin.get()获的字符
笔记出处例:
想输入一组数据到vector中,以回车为结束

错误版本:
while(1)
{
	cin>>t;
	v.push_back(t);
	if(t == '\n') //t无法从cin>>获得回车
	break;
}
正确版本:
while(1)
{
	cin>>t;
	v.push_back(t);
	if(cin.get() == '\n') //通过cin.get()获得回车
	break;
}


如何输出自定义输出得格式,比如,我想输出一个两位数,如果遇到小于10得数时,前面自动补零

//采用printf("%0*d",1);方式,位数如果够,正常输出,如果位数不够,自动在前面添0
printf("%02d",1);//输出01

③输入一个表达式,当遇到回车结束,怎么弄

int a[100];
cin>>a[0];
float  y ;
char c;
c = getchar();
while(c != '\n')
{
	cin>>y;//获得第二个数
	switch(c)
	{
		case '':...
	}
	c = getchar();
}
再把数组中的值相加
发布了110 篇原创文章 · 获赞 14 · 访问量 6003

猜你喜欢

转载自blog.csdn.net/qq_38173631/article/details/104950148