C语言已存在一个文件存放了10个整型数据,编程将其排序后存入另一个文件中。
时间: 2024-06-14 22:06:14 浏览: 85
C语言文件操作系统,进行文件写入读取操作
5星 · 资源好评率100%
你可以使用C语言中的文件操作函数来实现将一个文件中的整型数据排序后存入另一个文件中的功能。下面是一个示例代码:
```c
#include <stdio.h>
#define SIZE 10
void bubbleSort(int arr[], int n) {
int i, j, temp;
for (i = 0; i < n-1; i++) {
for (j = 0; j < n-i-1; j++) {
if (arr[j] > arr[j+1]) {
temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
}
}
}
int main() {
FILE *inputFile, *outputFile;
int numbers[SIZE];
int i;
// 打开输入文件
inputFile = fopen("input.txt", "r");
if (inputFile == NULL) {
printf("无法打开输入文件!\n");
return 1;
}
// 读取文件中的整型数据
for (i = 0; i < SIZE; i++) {
fscanf(inputFile, "%d", &numbers[i]);
}
// 关闭输入文件
fclose(inputFile);
// 对数据进行排序
bubbleSort(numbers, SIZE);
// 打开输出文件
outputFile = fopen("output.txt", "w");
if (outputFile == NULL) {
printf("无法打开输出文件!\n");
return 1;
}
// 将排序后的数据写入输出文件
for (i = 0; i < SIZE; i++) {
fprintf(outputFile, "%d ", numbers[i]);
}
// 关闭输出文件
fclose(outputFile);
printf("排序完成并已将结果存入输出文件!\n");
return 0;
}
```
在上面的代码中,我们首先定义了一个大小为10的整型数组`numbers`,然后使用`fopen`函数打开输入文件`input.txt`,并使用`fscanf`函数从文件中读取整型数据存入数组中。接下来,我们使用冒泡排序算法对数组进行排序,然后使用`fopen`函数打开输出文件`output.txt`,并使用`fprintf`函数将排序后的数据写入文件中。最后,我们关闭输入和输出文件,并输出排序完成的提示信息。
请注意,上述代码中的文件路径是相对路径,即输入文件和输出文件与代码文件在同一目录下。如果你的文件不在同一目录下,你需要修改文件路径。
阅读全文