编写程序,求出该数据文件中,在第3个-第9个数据之间,能被2整除的最大值?
编写程序,求出该数据文件中,在第3个-第9个数据之间,能被2整除的最大值。有大佬会吗?最好有编译结果的图片 真的非常感谢! 展开
#include <stdio.h>
#include"string.h"
#include <stdlib.h>
#define N 100000
int main() {
/*_________________________________________________*/
FILE *fp;
char b[N + 1];
//判断文件是否打开
if ( (fp = fopen("D:\\三体.txt", "r")) == NULL )/*这里D:\\ 三体.txt 是路径;读取D盘下,名为(三体)的文本文件*/
{
puts("文件读取失败!\n");
exit(0);
}
else
{
puts("文件读取成功");
puts("开始计算");
}
/*__________________________________________*/
int a[111],k=1,x=0,max=0;
for(int i=1;i<=10;i++)
fscanf(fp,"%d",&a[i]);//开始从文件里读取数字,并储存在数组a中;
for(int i=1;i<=10;i++)
printf("%d ",a[i]);//这里输出在文件里读取的数组
for(int i=3;i<=9;i++)
{
if(a[i]%2==0)
{
if(x==0)
max=a[i];
if(a[i]>max)
max=a[i];
x++;
}
}
printf("\nmax=%d",max);
/*___________________________________________*/
//结束关闭文件
fclose(fp);
return 0;
}
VB做的,把你创的文件路径改一下就可以用了。
图片不太清
Private Sub Command1_Click()
Dim a(1 To 10) As Integer, x As Integer, i As Integer
Open "C:\Users\000\Desktop/111.txt" For Input As #1(把自己的文件路径改在这里就可以了)
j = 1
For i = 1 To 2
Input #1, x
Next i
For i = 3 To 9
Input #1, x
If x Mod 2 = 0 Then
a(j) = x
j = j + 1
End If
Next i
Close #1
For i = 1 To j - 1
If a(i) > a(i + 1) Then
a(i + 1) = a(i)
End If
Next i
Print a(j - 1)
End Sub
#include<stdio.h>
void create(){
FILE *fout;
fout = fopen("111.txt","w");
if (!fout){printf("Can not create file 111.txt"); exit(0);};
fprintf(fout,"%s","12 23 44 68 95 68 47 95 10 25");
fclose(fout);
printf("111.txt created\n");
}
int main()
{
FILE *fin;
int a[10],i;
int max= -999;
fin = fopen("111.txt","r"); // 若手工建立 111.txt 则去掉这句
if (!fin) create(); // 若手工建立 111.txt 也去掉这句
fin = fopen("111.txt","r"); //打开文件
for (i=0;i<9;i++) fscanf(fin,"%d",&a[i]); //读入第一到第九个数
for (i=2;i<9;i++)if (a[i]%2 == 0 ) { max = a[i]; break;}; //从第三个数起找偶数
if (max == -999) {printf("no even value\n"); return 1;}; //若没有偶数,则结束
for (i=2;i<9;i++)if (a[i]%2==0 && a[i]>max) max = a[i]; //若有偶数,则找最大的
printf("max = %d\n", max); //输出最大的偶数
return 0;
}
with open("111.txt")as fp:
s=fp.read()
for i in s[6:-3].split():
a=int(i)
if a%2==0:
x.append(a)
print(max(x))