C语言文件题,在线急等!! 10

dat中存储了一系列整型数据,求込一系列整型数据中最小20个数中相対于第一个数据偏移量内奇数的数据中能妙被2和5整除的数据的个数,将所求得的数据的和显示在屏幕上,并且将这... dat中存储了一系列整型数据, 求込一系列整型数据中 最小20个数中相対于第一个数据偏移量内奇数的数据中能妙被2和5整除的数据的个数,将所求得的数据的和显示在屏幕上,并且将这个20个最小的数与所求结果写入文件result.data(动态分配) 展开
 我来答
冷酷船长
2018-07-02 · TA获得超过252个赞
知道小有建树答主
回答量:310
采纳率:65%
帮助的人:99.2万
展开全部
# include <stdio.h>
# include <stdlib.h>
# include <stddef.h>
# include <limits.h>

#define arr(x) arr[(x)]
#define Amount 20

extern int main(int argc, char *argv[]){
    volatile FILE *f; volatile int arr(Amount), r = 0, c = 0, t;
    if((f = fopen("dat", "rb")) != NULL){
        while(fread(&t, sizeof(int), 1, f))
            for(size_t i = 0; i<Amount; i++)
                if(c < 20) arr(c++) = t;
                else do
                if(t < arr(i)) arr(i) = t;
                else continue; while(0);
        fclose(f);
        for(size_t i = 0; i<c; i++)
            if((arr(i)-arr(0))%2 == 0 && arr(i)%2 == 0 && arr(i)%5 == 0) r++;
        fprintf(stdout, "The count of numbers which offset from the first Odd, remainder 2&5 in the smallest 20 ones: %d", r);
        if((f = fopen("result.data", "wb")) != NULL){
            fwrite(arr, sizeof(int), c, f);
            fwrite(&r, sizeof(int), 1, f);
            fclose(f);
        } } return EXIT_SUCCESS; }
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友242a91c7f
2018-07-01 · 超过11用户采纳过TA的回答
知道答主
回答量:69
采纳率:44%
帮助的人:11.3万
展开全部
私信我私信我私信我私信我
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式