以上代码用printf()代替 std::cout << "..." << std::endl; 之后的代码完整的给我
时间: 2024-10-16 18:04:22 浏览: 28
c++,cin.clear用法
将`std::cout`替换为`printf()`函数后,上述代码可能会像这样变化:
```cpp
#include <cstdio> // 替代了<iostream>中的std::cout
class InventorySystem {
public:
// ... 其他成员保持不变 ...
void create_salesman(int initial_stock) {
printf("请输入售货员姓名:\n");
scanf("%s", salesman.c_str());
printf("请输入产品名称:\n");
scanf("%s", product_name.c_str());
stock = initial_stock;
}
// ... 其他函数保持不变 ...
void quit() {
printf("程序已结束。\n");
}
};
int main() {
InventorySystem system;
while (true) {
int input;
printf("请选择操作(1-创建售货员, 2-卖出商品, 3-随机卖出, 4-查看信息, 5-退出): ");
scanf("%d", &input);
switch (input) {
case 1: system.create_salesman(100); break;
case 2: system.sell(scanf("%d", &input)); break;
case 3: system.random_sell(); break;
case 4: system.view_info(); break;
case 5: system.quit(); return 0;
default: printf("无效输入。\n");
}
}
return 0;
}
```
在这个版本中,`printf()`函数用于输出文本字符串,`scanf()`函数用于接收用户输入的数据。`%s`用于字符串输入,`%d`用于整型输入。需要注意的是,当使用`scanf()`时,需要提供指向变量的地址,例如`scanf("%d", &input)`。
阅读全文