全國(guó)計(jì)算機(jī)等級(jí)考試三級(jí)C語(yǔ)言上機(jī)題91-100

字號(hào):

☆題目91
    請(qǐng)編制程序prog1.c,從文件in.dat中讀取200個(gè)整數(shù)至數(shù)組xx中,求出奇數(shù)的個(gè)數(shù)cnt1和偶數(shù)的個(gè)數(shù)cnt2以及數(shù)組xx下標(biāo)為偶數(shù)的元素值的算術(shù)平均值pj(保留2位小數(shù))。
     結(jié)果cnt1,cnt2,pj輸出到out.dat中。
     部分程序、讀數(shù)據(jù)函數(shù)read_dat(int xx[200])及輸出格式已給出。
    #include
    #include
    #define N 200
    void read_dat(int xx[N])
    {
     int i,j;
     FILE *fp;
     fp=fopen("in.dat","r");
     for(i=0;i<20;i++){
     for(j=0;j<10;j++){
     fscanf(fp,"%d,",&xx[i*10+j]);
     printf("%d ",xx[i*10+j]);
     }
     printf("\n");
     }
     fclose(fp);
    }
    void main()
    {
     int i,j,sum;
     int cnt1,cnt2,xx[N];
     float pj;
     FILE *fw;
     clrscr();
     fw=fopen("out.dat","w");
     read_dat(xx);
    /**********************/
     sum=0; pj=0.0; cnt1=cnt2=0;
     for(i=0;i { if(xx%2) cnt1++;
     else cnt2++;
     if(i%2==0) {pj+=xx;sum++;}
     }
     pj/=sum;
    /***********************/
    printf("\n\ncnt1=%d,cnt2=%d,pj=%6.2f\n",cnt1,cnt2,pj);
    fprintf(fw,"%d\n%d\n%6.2f\n",cnt1,cnt2,pj);
    fclose(fw);
    }
    *******************************************************************************
    ☆題目92
    請(qǐng)編制程序prog1.c,從文件IN.DAT中讀取200個(gè)整數(shù)至數(shù)組xx中,求出數(shù)max及數(shù)的個(gè)數(shù)cnt和數(shù)組xx中能被3整除或能被7整除的算術(shù)平均值pj(保留2位小數(shù))。
     結(jié)果max,cnt,pj輸出到OUT.DAT中。
     部分程序、讀數(shù)據(jù)函數(shù)read_dat(int xx[200])及輸出格式已給出。
    #include
    #include
    #define N 200
    void read_dat(int xx[N])
    {
     int i,j;
     FILE *fp;
     fp=fopen("in.dat","r");
     for(i=0;i<20;i++){
     for(j=0;j<10;j++){
     fscanf(fp,"%d,",&xx[i*10+j]);
     printf("%d",xx[i*10+j]);
     }
     printf("\n");
     }
     fclose(fp);
    }
    void main()
    {
     int m,temp,n,sum;
     int cnt,xx[N],max
     float pj;
     FILE *fw;
     clrscr();
     fw=fopen("out.dat","w");
     read_dat(xx);
    /*********************/
     cnt=0; max=xx[0]; pj=0.0; n=0;
     for(m=0;m if(max for(m=0;m {if(xx[m]==max) cnt++;
     if(xx[m]%3==0||xx[m]%7==0)
     { pj+=xx[m]; n++; }
     }
     pj/=n;
    /*********************/
    printf("\n\nmax=%d,cnt=%d,pj=%6.2f\n",max,cnt,pj);
    fprintf(fw,"%d\n%d\n%6.2f\n",max,cnt,pj);
    fclose(fw);
    }
    *****************************************************************************