请在第一周作业的基础上,继续完成:找出给定的文件中数组的最大值及其对应的最小下标(下标从0开始)。并将最大值和对应的最小下标数值写入文件。
输入: 请建立以自己英文名字命名的txt文件,并输入数组元素数值,元素值之间用逗号分隔。7-2 求最大值及其下标 (20 分)
本题要求编写程序,找出给定的n个数中的最大值及其对应的最小下标(下标从0开始)。输入格式:
输入在第一行中给出一个正整数n(1<n≤10)。第二行输入n个整数,用空格分开。输出格式:
在一行中输出最大值及最大值的最小下标,中间用一个空格分开。输入样例:
6 2 8 10 1 9 10 输出样例: 10 21、实验代码:
include<stdio.h>
include<stdlib.h>
int main(void)
{ FILE * fp; int i,n,b=0,d=0,e=0; int a[10]; if((fp=fopen ("C:\caoe\TXT.txt","w+"))==NULL){ printf("File open error!\n"); exit (0); } for(j=0;j<n;j++) { if(a[0]<a[j]) { a[0]=a[j]; i=j; } else if(a[0]==a[j]) { a[0]=a[j]; if(i>j) { i=j; } } } printf("%d %d",a[0],i); if(fclose(fp)){ printf("Can not close the file!\n"); exit (0); } return 0; }2、运行截图:
给定一个整数数组(包含正负数),找到一个具有最大和的子数组,返回其最大的子数组的和。
例如:[1, -2, 3, 10, -4, 7, 2, -5]的最大子数组为[3, 10, -4, 7, 2] 输入: 请建立以自己英文名字命名的txt文件,并输入数组元素数值,元素值之间用逗号分隔。 输出 在不删除原有文件内容的情况下,将最大子数组以及子数组的和写入文件。 1、实验代码:include<stdio.h>
include<stdlib.h>
int main()
{ FILE *fp; int i,n,j,k=0;if((fp=fopen("c:\\caoe\\TXT.txt","w+"))==NULL){ printf("File open error!\n"); exit(0);}scanf("%d",&n); fprintf(fp,"%d\n",n); int a[n],max=a[0]; for(i=0;i
}
2、运行截图