c++设语句求出最终输出结果!!
#include "stdafx.h"
#include <iostream.h>
void main(void)
{
float x=100, y=3.14;
char a='\t', b='s';
cout <<"x is" << setw(10) << x <<'\t';
cout.setf(ios::scientific,ios::floatfield);
cout <<"y="<< y << endl;
cout << a << b << endl;
}
能不能讲解下,越清楚越好...我才刚起步的菜鸟...
答案:第一句#include "stdafx.h"是用不上的,应改为#include <iomanip.h>,是一个控制输出格式的头文件set()就是它定义的一个函数,用以控制输出宽度;
cout <<"x is" << setw(10) << x <<'\t'; 这句话中,setw(10)设置x的输出宽度为10,但实际x=100只占3位,所以不足部分用空格补齐,setw()设置的对齐方式是右对齐,故100前有7个空格;后面的\t是一个转义字符,代表制表符即键盘Tab键,其意思相当于输出x后按了一下Tab键;
cout.setf(ios::scientific,ios::floatfield); 是<iostream.h>头文件控制的输出格式,ios::scientific 设置为指数形式输出,ios::floatfield 设置为浮点数形式输出 ,这句话对它后面的所有输出语句有效,当然如果是输出字符,自然无效了;
cout << a << b << endl; 输出了a是一个制表符,所以看不见,紧跟着输出了b,即字符s //这里只需要iomanip.h头文件就行了
//'\t'相当于按下Tab键
//setw(10)设置输出宽度为10个字符,不足10个字符加空格补足
//ios::scientific科学计数法 ios::floatfield浮点组合的格式
上一个:C++怎么实现链表啊?急需要解答!
下一个:VB程序和C++程序有什么不同?