一、第二周作业
请在第一周作业的基础上,继续完成:找出给定的文件中数组的最大值及其对应的最小下标(下标从0开始)。并将最大值和对应的最小下标数值写入文件。
输入:请建立以自己英文名字命名的txt文件,并输入数组元素数值,元素值之间用逗号分隔。 输出在不删除原有文件内容的情况下,将最大值和对应的最小下标数值写入文件。 1)实验代码
```
# include <stdio.h>
# include <string.h> # include <stdlib.h> int main (void) { FILE * fp; int i,x,flag=0,n; char op = ','; scanf ("%d",&n); int a[n]; if ((fp=fopen("C:\\Users\\Administrator\\Desktop\\abcs\\huangchunyan.txt","w+")) == NULL){
printf ("File open error!\n"); exit (0); } fprintf (fp,"%d\n",n); for (i=0;i<n;i++){
scanf ("%d",&a[i]); fprintf (fp,"%d%c",a[i],op); } x = a[0]; for (i=0;i<n;i++){
if (x<a[i]){
x = a[i]; flag = i; } } fprintf (fp,"\n"); fprintf (fp,"%d %d",x,flag); if (fclose(fp)) { printf ("Can not close the file!\n"); exit (0); } printf ("%d %d",x,flag); return 0; }```
2)设计思路
3)本题调试过程碰到问题及解决办法
在编译运行时,程序未输出结果,发现我只输入了文件输出,没有输入程序输出;还有未加入换行符和“,”,最后通过题目要求格式对比发现错误。
4)运行结果图
二、学习进度条
三、学习感悟
回顾本周学习状况,我在写编程时只能对照着写 ,按书上的模式写;知识点运用不熟练,有些还不懂。