cin和cout怎么格式化输入和输出呢?

cin和cout怎么格式化输入和输出呢?

scanf("%d+%d",&a,&b);

就必须要按照scanf中的样子输入。那么cin怎么实现呢

正在回答

登陆购买课程后可参与讨论,去登陆

3回答

您好,使用cin接收用户输入的数据时,1.在用户输入数据时提醒用户输入指定的类型。2.先定义变量类型,例如整型,再将用户的数据写入变量,进行判断。

#include <iostream>
using namespace std;
#include <typeinfo.h>
int main(){
int i;
cin >> i;
if (cin.good())
{
cout << i << endl;
}else
{
cout <<"请输入整数" << endl;
}
return 0;
}

cin.good():表示要读入一个int型的数据时,却读到了一个char,这时cin.good()就返回false,表示输入流出错了。

如果解决了您的问题,请采纳,祝学习愉快!

  • MingLL 提问者 #1
    谢谢老师的回答,但是还是有不明白的地方,cout可以指定输出的位数嘛。我想让它对其输出。但现在实现不了,用制表符也没有办法实现。
    2018-04-23 17:13:48
  • 好帮手慕查理 回复 提问者 MingLL #2
    您好,请您详细描述一下“cout可以指定输出的位数嘛”这句话,以便小慕帮助您理解,另外您是想让什么内容对齐输出?请您详细反馈。祝学习愉快!
    2018-04-23 17:42:07
  • MingLL 提问者 回复 好帮手慕查理 #3
    就比如说,我使用printf("%-3d %03.2f",1,1.2);它就输出 1 001.20。 使用cout怎么做呢
    2018-04-24 16:27:02
Tender10 2018-04-24 16:45:06

在C++中输出语句可以用cout,也可以用printf。所以如果你想输出对应格式符的数据,那么使用printf也是可以的,使用cout也可以,如下所示:

#include<iostream>
#include <iomanip>
using namespace std;
int main(){
    float a = 3.1234;
    cout<<fixed<<setprecision(2)<<a<<endl;
    printf("%.2f\n",a);
    return 0;
}


  • 提问者 MingLL #1
    好的 谢谢老师。那有没有这一方面的总结呢?
    2018-04-25 08:42:59
  • Tender10 回复 提问者 MingLL #2
    好的,感谢您的意见和建议,针对您提出的问题,我们会尽快总结成一个教辅资料,帮助更多的同学去了解这个知识点。祝学习愉快~
    2018-04-25 09:42:55
風过无痕 2018-04-22 23:47:38

cin>>a>>b;

或者

cin>>a;

cin>>b;

都可以;

scanf括号中的引号里面,两个%d之间符号再输入a,b值的时候也得加上,但不具有运算意义;

  • 提问者 MingLL #1
    我的意思是我想要用户按照我的格式输入。而不是在乎它表达的意思。 在c语言中还有可以更改%d在改变输出8进制和16进制,还有输出的格式比如输出占8位等。在cin和cout中怎么实现呢?
    2018-04-22 23:53:19
  • 風过无痕 回复 提问者 MingLL #2
    回答你后半个问题吧, cin>>a>>b; 八进制:cout<<oct<<a<<" "<<b<<endl;(拆开输出也可以) 十六进制:cout<<hex<<a<<" "<<b<<endl; 你问的像scanf那样输入,我也不清楚,不好意思啦,你可以问一问上面那个不爱吃萝卜的兔子姐;
    2018-04-23 16:37:39
  • 提问者 MingLL 回复 風过无痕 #3
    好的。谢谢啦。 老师有个作业要我们编写一个管理系统,需要校验一些东西。然后我遇到了好多问题。
    2018-04-23 16:40:24
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
C++零基础入门 热门编程语言 二级考试必备
  • 参与学习       529    人
  • 提交作业       110    份
  • 解答问题       594    个

无论您是零基础、还是想晋升,亦或是想转型,C++无疑都是最佳选择。本路径共分为基础语法、指针与引用、面向对象三大模块,为你开启入门C++编程的大门!

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师