从键盘上输入一个整数n,n不大于30000,在文本文件“f1.txt”中输出不大于n的7和7的倍数,还有包含7的数字。例如(7,14,17,21,27,37...70,71,72 73...)输出格式要求按从小到大排列的不大于n的且与7有关的数字,每行一个。用c++写。
时间: 2024-10-20 12:19:11 浏览: 18
c代码-12.从键盘输入n,求不大于n的各正偶数之和。例如,输入"10",输出"10以内偶数和:30。"
在C++中,你可以通过迭代和文件操作来实现这个需求。这里是一个简单的示例程序:
```cpp
#include <iostream>
#include <fstream>
#include <vector>
int main() {
int n;
std::cout << "请输入一个整数n (不超过30000): ";
std::cin >> n;
std::ofstream outfile("f1.txt", std::ios_base::app); // 追加模式打开文件
if (!outfile) {
std::cerr << "无法打开文件f1.txt" << std::endl;
return 1;
}
// 使用范围for遍历并打印符合条件的数字
for (int i = 1; i <= n; ++i) { // 遍历1到n
if (i % 7 == 0 || std::strchr("7", i) != nullptr) { // 检查是否能被7整除或包含字符'7'
outfile << i << " "; // 写入文件
}
}
outfile.close(); // 关闭文件
std::cout << "已将所有符合条件的数字写入f1.txt\n";
阅读全文