47.
#include <stdio.h>
int main(void){
int a[2000],i,j,k,n,nh;
FILE *fp;
if((fp=fopen("a.txt","r"))==NULL){
printf("Open the file failure...\n");
return 0;
}
for(n=0;fscanf(fp,"%d",a+n)==1;n++);
fclose(fp);
for(nh=n>>1,i=0;i<n;i++){
for(k=i,j=k+1;j<n;j++)
if(a[k]>a[j])
k=j;
if(k-i)
j=a[k],a[k]=a[i],a[i]=j;
if(i==nh){
printf("The result is %g\n",n&1 ? a[i] : (a[i]+a[i-1])/2.0);
break;
}
}
return 0;
}
48.
#include <stdio.h>
int prime(int n){
int i;
if(n>2 && !(n&1) || n<2)
return 0;
for(i=3;i*i<=n;i+=2)
if(!(n%i))
return 0;
return 1;
}
int main(void){
int n,m,x;
FILE *fp;
if((fp=fopen("a.txt","r"))==NULL){
printf("Open the file failure...\n");
return 0;
}
for(m=n=0;fscanf(fp,"%d",&x)==1;n++)
if(prime(x))
m++;
fclose(fp);
printf("A total of %d prime(s).\n",m);
return 0;
}
49.
#include <stdio.h>
int main(void){
int n,m,x;
FILE *fp;
if((fp=fopen("a.txt","r"))==NULL){
printf("Open the file failure...\n");
return 0;
}
for(m=n=0;fscanf(fp,"%d",&x)==1;n++)
if(x>99 && x<1000)
m++;
fclose(fp);
printf("It is %d.\n",m);
return 0;
}
50.
#include <stdio.h>
int prime(int n){
int i;
if(n>2 && !(n&1) || n<2)
return 0;
for(i=3;i*i<=n;i+=2)
if(!(n%i))
return 0;
return 1;
}
int main(void){
int n,x;
FILE *fpi,*fpo;
fpi=fopen("a.txt","r");
fpo=fopen("b.txt","w");
if(fpi==NULL || fpo==NULL){
printf("Open the file failure...\n");
if(fpi) fclose(fpi);
if(fpo) fclose(fpo);
return 0;
}
for(n=0;fscanf(fpi,"%d",&x)==1;n++)
if(prime(x))
fprintf(fpo,"%d ",x);
fclose(fpi);
fputc('\n',fpo);
fclose(fpo);
return 0;
}
本回答被网友采纳