按题目要求编写完整功能代码,参考答案点击按钮展开
编写函数 fun,将数组 a 的 n 个整数写入文本文件 data.txt(每个数一行),返回写入的元素个数。
#include <stdio.h>
/* 函数功能:将数组 a 的 n 个整数写入文本文件 data.txt,
每个整数占一行。返回成功写入的元素个数。
请在下方编写 fun 函数体。 */
int fun(int a[], int n)
{
/* 请在这里编写代码 */
}
int main()
{
int a[] = {10,20,30,40,50};
int cnt = fun(a, 5);
printf("写入 %d 个整数\n", cnt);
return 0;
}
int fun(int a[], int n)
{
FILE *fp;
int i, count = 0;
fp = fopen("data.txt", "w");
if(fp == NULL) return 0;
for(i=0; i<n; i++)
{
fprintf(fp, "%d\n", a[i]);
count++;
}
fclose(fp);
return count;
}
考点:文件操作 fopen/fprintf/fclose。打开模式 "w" 表示写(覆盖已有内容)。必须检查 fp==NULL 防止打开失败导致崩溃。用 fprintf(fp, "%d\n", a[i]) 每个整数一行写入。写完必须 fclose 关闭文件(否则数据可能还在缓冲区没落盘)。count 记录成功写入个数。