酷代码 AI
菜单
全部AI  /  AI写代码神器
服务商

(1). 编写冒泡排序的函数模板,要求对模板类型t的数组进行冒泡降序排序。 定义 txtdata类,要求在构造时打开文件(文件名由构造函数输入),并读取最多10个字符串,存入私有成员变量 strirns data[10]中。文件中按行存储字符串,一行一个。并在析构时向同一文件中按原文件的逆序写入字符串,每行一个,覆盖原有内容。 提示①:由于析构中需要向同一个文件写入,因此可在类中保存文件名。建议使用string 保存。 提示(2:读取后,注意判断流状态,什么样的流状态才表示读到了数据? 提示3:处理有效数据量不确定的数组,可参照顺序表的处理方法 (3) 定义 bindata 类,构造时如提供了文件名,则在构造函数中打开文件并按二进制方式读取最多10个整数存入私有成员变量 int data[201中。文件的格式是:整数按二进制方式保存在文件中,每个整数占用4字节。bindata 类不必保存文件名。析构时不保存数据。增加成员函数void savedata(const string s),功能是按下标顺序,将数据以二进制方式保存到s指定的文件中。为输出方便,可以重载插入符。 提示①:二进制文

(1). ```cpp #include <iostream> #include <fstream> #include <string> using namespace std; template <typename T> void bubbleSort(T arr[], int size) { for (int i = 0; i < size - 1; i++) { for (int j = 0; j < size - i - 1; j++) { if (arr[j] < arr[j+1]) { swap(arr[j], arr[j+1]); } } } } class txtdata { private: string filename; string data[10]; int count; public: txtdata(const string& filename) : filename(filename), count(0) { ifstream file(filename); if (file.is_open()) { string line; while (getline(file, line)) { data[count++] = line; if (count == 10) { break; } } } file.close(); } ~txtdata() { ofstream file(filename, ios::out | ios::trunc); if (file.is_open()) { for (int i = count - 1; i >= 0; i--) { file << data[i] << endl; } } file.close(); } }; int main() { int arr[] = { 5, 3, 8, 1, 2 }; int size = sizeof(arr) / sizeof(arr[0]); bubbleSort<int>(arr, size); for (int i = 0; i < size; i++) { cout << arr[i] << " "; } cout << endl; return 0; } ``` (3). ```cpp #include <iostream> #include <fstream> #include <string> using namespace std; class bindata { private: int data[10]; public: bindata(const string& filename = "") { if (!filename.empty()) { ifstream file(filename, ios::binary); if (file.is_open()) { file.read(reinterpret_cast<char*>(data), sizeof(data)); } file.close(); } } void savedata(const string& filename) { ofstream file(filename, ios::binary); if (file.is_open()) { file.write(reinterpret_cast<char*>(data), sizeof(data)); } file.close(); } friend ostream& operator<<(ostream& os, const bindata& bd) { for (int i = 0; i < sizeof(bd.data) / sizeof(bd.data[0]); i++) { os << bd.data[i] << " "; } return os; } }; int main() { bindata bd("data.bin"); cout << bd << endl; bd.savedata("output.bin"); return 0; } ``` [2024-06-01 16:02:33 | AI写代码神器 | 1551点数解答]

热门AI查看更多
“AI写代码神器”擅长各种语言编程、解释代码、注解补充。 在这里填写你的问题。如:写出java冒泡排序算法。
一个入口掌握所有。 在这输入任何问题,或者要AI输出的内容。
将阿拉伯数字转为人明币大写,如:数字1000转换为壹仟。
AI生成爆文标题,能够快速创作出极具吸引力的标题,促使短视频、自媒体文章的点击率与阅读量迅猛攀升。 此处填写一个原始标题,如:一般人怎样打理自身的社交圈?
AI生成新闻评论。 在这里填入新闻内容。
AI生成内容摘要。 在此处填入需要生成摘要的内容,还可以输入4000字。
AI生成主持词,擅长团建、年会、婚礼、节日等场合的主持词编写。 在这里填入主持场景,如:运动会
AI快速生成周报、月报、日报、年终总结等各类总结报告。 在这里简单输入工作目标、指标、成果,没有任何格式或特殊需求。如:计划年销售业绩1000万,实际完成800万。
输入一个字,显示以这个字开头的歇后语
输入一个字,显示以这个字开头的成语
极速在线生成证件照
极速更换证件照红、蓝、白底色
实用工具查看更多
数独游戏 [娱乐类]
数独(Sudoku)是经典的9x9数字逻辑谜题。在有81个小格的九宫格内,玩家依据初始数字推理填入1 - 9的数字,要保证每行、每列以及每个3x3宫格中的数字都不重复。这款在线数独游戏有多难度可选,没有头绪时,可以点开答案看一下哦^_^
3D魔方 [娱乐类]
基于three.js的小游戏,锻炼玩家的眼力和反应力,非常不错
经典推箱子 [娱乐类]
基于H5的经典推箱子小游戏,锻炼玩家的眼力和反应力,非常不错
摸鱼五子棋 [娱乐类]
基于H5的五子棋人机对练,锻炼玩家的眼力和反应力,非常不错
速度打字机 [娱乐类]
打字速度挑战游戏可以训练玩家的打字速度与准确率。玩家要在给定时间内输入尽量多的单词或句子,从而在规定时间里争取获得最高分。
键盘打字 [娱乐类]
基于H5的键盘打字小游戏,锻炼玩家的眼力和反应力,非常不错
扫雷 [娱乐类]
基于H5的小游戏,锻炼玩家的眼力和反应力,非常不错
2048 [娱乐类]
H5版2048小游戏,锻炼玩家的前瞻力,非常不错
36万 进入2048
相关提问