std::cout 打印+空格, 列出10种不同方式
时间: 2024-05-26 17:11:15 浏览: 30
1. std::cout << " "; //直接输出一个空格
2. std::cout << '\x20'; //使用空格的 ASCII 码(16进制:0x20)输出空格
3. std::cout.put(' '); //使用 put 函数输出一个空格
4. std::putchar(' '); //使用 putchar 函数输出一个空格
5. std::cout.width(1); //设置输出宽度为1,使输出为空格
6. std::cout.fill(' '); //设置填充字符为空格
7. std::cout << std::setw(1) << ""; //使用 setw 函数设置宽度为1,输出一个空字符串
8. std::cout << std::setfill(' ') << std::setw(1) << ""; //结合 setw 和 setfill 函数输出一个空格
9. std::cout << std::string(1, ' '); //使用 string 类型生成一个长度为1,值为空格的字符串,再输出
10. char space = ' '; std::cout << space; //定义一个 char 类型的变量,赋值为空格,再输出
相关问题
编译打印如下图形: * *** ***** ******* *** *** ***
要打印出你描述的图形,我们可以使用嵌套循环来控制行和列,然后在对应位置打印星号(*)。下面是C++代码来实现这个图案:
```cpp
#include <iostream>
int main() {
int rows = 7; // 图形有7行
int spaces = 2; // 每行开头的空格数
for (int i = 0; i <= rows; i++) { // 遍历行
for (int j = 0; j <= rows - i; j++) { // 每行打印星号数量递减
if (i == 0 || i == rows || j == 0 || j == rows - i) { // 对角线或边界打印星号
std::cout << "*";
} else {
std::cout << " ";
}
}
std::cout << "\n"; // 换行
if (i != rows) { // 如果不是最后一行,减少空格数
spaces -= 2;
}
}
return 0;
}
```
当你运行这段代码时,它会按照你所描述的方式打印出图形。
求命题公式的真值表 问题描述: 给出一个命题公式,列出其真值表 输入说明: 命题变元及命题常元均用大写字母表示,用 !、+、*、-、= 分别表示非、合取、析取、条件、双条件联结词。 输出说明: 第一行为所有命题变元、命题常元和命题公式,之间用空格隔开,所有命题常元和命题变元按字典序排列。第二行开始为不同的真值指派及在该指派下命题公式的真值,同行的真值之间用空格隔开,真用T表示,假用F表示。真值指派按升序排列。 输入样例: 样例1: !A 样例2: A+B 输出样例: 样例1: A !A F T T F 样例2: A B A+B F F F F T F T F F T T T 用c++代码的形式表达
以下是一个简单的 C++ 代码,可以实现命题公式的真值表:
```c++
#include <iostream>
#include <vector>
#include <algorithm>
#include <cmath>
using namespace std;
bool eval(string expr, vector<pair<char, bool>> values) {
for (auto& v : values) {
size_t pos = expr.find(v.first);
while (pos != string::npos) {
expr.replace(pos, 1, v.second ? "T" : "F");
pos = expr.find(v.first, pos + 1);
}
}
while (true) {
size_t pos = expr.find("!");
if (pos == string::npos) break;
expr.replace(pos, 2, (expr[pos + 1] == 'T') ? "F" : "T");
}
while (true) {
size_t pos = expr.find("*");
if (pos == string::npos) break;
bool left = (expr[pos - 1] == 'T');
bool right = (expr[pos + 1] == 'T');
expr.replace(pos - 1, 3, left && right ? "T" : "F");
}
while (true) {
size_t pos = expr.find("+");
if (pos == string::npos) break;
bool left = (expr[pos - 1] == 'T');
bool right = (expr[pos + 1] == 'T');
expr.replace(pos - 1, 3, left || right ? "T" : "F");
}
while (true) {
size_t pos = expr.find("-");
if (pos == string::npos) break;
bool left = (expr[pos - 1] == 'T');
bool right = (expr[pos + 1] == 'T');
expr.replace(pos - 1, 4, !left || right ? "T" : "F");
}
while (true) {
size_t pos = expr.find("=");
if (pos == string::npos) break;
bool left = (expr[pos - 1] == 'T');
bool right = (expr[pos + 1] == 'T');
expr.replace(pos - 1, 3, left == right ? "T" : "F");
}
return expr == "T";
}
int main() {
string expr;
cin >> expr;
vector<char> vars;
for (char c : expr) {
if (isupper(c)) {
if (find(vars.begin(), vars.end(), c) == vars.end()) {
vars.push_back(c);
}
}
}
sort(vars.begin(), vars.end());
cout << expr << " ";
for (char c : vars) {
cout << c << " ";
}
cout << endl;
vector<pair<char, bool>> values;
for (int i = 0; i < pow(2, vars.size()); i++) {
for (int j = 0; j < vars.size(); j++) {
values.push_back(make_pair(vars[j], ((i >> j) & 1) == 1));
}
for (auto& v : values) {
cout << (v.second ? "T" : "F") << " ";
}
cout << (eval(expr, values) ? "T" : "F") << endl;
values.clear();
}
return 0;
}
```
该程序从标准输入读取一个命题公式,然后输出该命题公式的真值表。首先,程序提取所有的命题变元并将它们按字典序排序。然后,程序生成所有可能的真值指派,并计算在每个真值指派下命题公式的真值。最后,程序输出真值表。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![application/x-rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)