请问一下这个的代码怎么写啊

  1. 设计一一个程序,使之从键盘接收三种不同类型的数据:整型、浮点型和长度不超过20个字符的字符串(char str[20],输入字符串cin>>str;输 出字符串cout<<str),并按如下格式输出:

1)整型数分别按十进制、十六进制和八进制显示,域宽为6,左对齐
2)浮点型数据要显示符号,小数点后保留2位,并用科学计数法表示。
3)字符串 显示域宽为25,右对齐,空格处用字符‘*’填充。

勾格式转换

#include <iostream>
#include <iomanip>

using namespace std;

int main()
{
    int a;
    float b;
    char str[20];
    cin >> a >> b >> str;
    cout << left << setw(6) << a << setw(6) << showbase << hex << a << setw(6) << oct << a << endl;
    cout << showpos << scientific << setprecision(2) << b << endl;
    cout << right << setw(25) << setfill('*') << str << endl;
    return 0;
}
$ g++ -Wall main.cpp
$ ./a.out
123 456.789 abcdefg
123   0x7b  0173  
+4.57e+02
******************abcdefg