把文本文件中的奇数全部输出

abxialiang 2010-05-18 10:11:52
有s:\a.txt这个文件,内容是
1 22555 4 5 3 6 8 4 2 3 9 5 1 22 5 44 1111
14 55 -254
等等一些整型数值(空格和回车),c++怎么编程把其中的奇数提取出来并显示,而且还要另外把这些奇数全部保存到s:\b.txt这个文件中
...全文
139 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
abxialiang 2010-05-20
  • 打赏
  • 举报
回复
楼上不完整,是这个不能运行
#include <iostream>
using namespace std;
int main()
{
std::ifstream ifs("s:\\a.txt");
std::ifstream ofs("s:\\b.txt");
int i;
while(ifs >> i)
{
if(i/2*2 != i)
{
std::cout << i << "\t";
ofs << i << "\t";

}
}
return 0;
}
abxialiang 2010-05-20
  • 打赏
  • 举报
回复
不能运行,还是包含什么头文件吗,最好是给一个能直接运行的就好了,我现在很菜的,using namespace std;
int main()
{
std::ifstream ifs("s:\\a.txt");
std::ifstream ofs("s:\\b.txt");
int i;
while(ifs >> i)
{
if(i/2*2 != i)
{
std::cout << i << "\t";
ofs << i << "\t";

}
}
return 0;
}
wraithtc 2010-05-20
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 graymole2010 的回复:]
std::ifstream ifs("s:\\a.txt");
std::ifstream ofs("s:\\b.txt");
int i;
while(ifs >> i)
{
if(i/2*2 != i)
{
std::cout << i << "\t";
ofs << i << "\t";

}
}
[/Quote]
受教了!
toplinq 2010-05-20
  • 打赏
  • 举报
回复
很方便,正解,要挑刺就是流close一下
[Quote=引用 4 楼 graymole2010 的回复:]
std::ifstream ifs("s:\\a.txt");
std::ifstream ofs("s:\\b.txt");
int i;
while(ifs >> i)
{
if(i/2*2 != i)
{
std::cout << i << "\t";
ofs << i << "\t";

}
}
[/Quote]
toplinq 2010-05-20
  • 打赏
  • 举报
回复
很方便,正解,要挑刺就是流close一下
[Quote=引用 4 楼 graymole2010 的回复:]
std::ifstream ifs("s:\\a.txt");
std::ifstream ofs("s:\\b.txt");
int i;
while(ifs >> i)
{
if(i/2*2 != i)
{
std::cout << i << "\t";
ofs << i << "\t";

}
}
[/Quote]
十八道胡同 2010-05-20
  • 打赏
  • 举报
回复
你用freopen文件重定向到stdin,就很简单了
abxialiang 2010-05-20
  • 打赏
  • 举报
回复
我对文件的操作不熟悉,不知道怎么读取,并且把读取到的数值变成整形的数值给一个变量,解决了这个问题后就简单了。
GrayMole2010 2010-05-18
  • 打赏
  • 举报
回复
std::ifstream ifs("s:\\a.txt");
std::ifstream ofs("s:\\b.txt");
int i;
while(ifs >> i)
{
if(i/2*2 != i)
{
std::cout << i << "\t";
ofs << i << "\t";

}
}
shl305 2010-05-18
  • 打赏
  • 举报
回复
判断奇数用 n&0x1 更好些
chaoliu1024 2010-05-18
  • 打赏
  • 举报
回复
就用楼上的方法!
stephen_qi 2010-05-18
  • 打赏
  • 举报
回复
我有一种方法,可能不是最简单的
先把文本读出来,然后根据空格和回车逐个提取出来,通过atoi函数转换为int型,再用%操作符判断是否是奇数。

64,682

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧