m0_62734017 2021-11-28 13:56 采纳率: 100%
浏览 23
已结题

c语言编写函数提取数组里双精度的数,用新的数组保存并返回,输出不了


#include <stdio.h>
#include <stdlib.h>
#define N 10

double *getPart(double src[ ], int n, double x1, double x2, int *p){
    int i,j=0;
    double *a,*q;
    a=(double*)malloc(sizeof(double)*10);
    q=a;
    for(i=0;i<n;i++) {
        if(src[i]>x1&&src[i]<x2) {
            *q=src[i];
            q++;
            j++;
        }
    }
   *p=j;
    return a;
}

int main(){
    int m,n,i;
    double src[N],x1,x2;
    scanf("%d",&n);
    for(i=0;i<n;i++) {
        scanf("%lf",&src[i]);
    }
    scanf("%lf %lf",&x1,&x2);
    double str[N],*a;
    a=&str;
    //printf("%.2f",*a);
    a=getPart(src,n,x1,x2,m);
    for(i=0;i<m;i++) {
        printf("%.2lf",str[i]);
    }
    return 0;
}

img

  • 写回答

1条回答 默认 最新

  • qzjhjxj 2021-11-28 15:04
    关注

    修改见注释处,供参考:

    #include <stdio.h>
    #include <stdlib.h>
    #define N 10
    double *getPart(double src[],int n, double x1, double x2, int *p){
        int i,j=0;
        double *a,*q;
        a=(double*)malloc(sizeof(double)*10);
        q=a;
        for(i=0;i<n;i++){
            if(src[i]>x1 && src[i]<x2){
               *q=src[i];
               q++;
               j++;
            }
        }
        *p=j;
        return a;
    }
    int main(){
        int  m,n,i;
        double src[N],x1,x2;
        scanf("%d",&n);
        for(i=0;i<n;i++){
            scanf("%lf",&src[i]);
        }
        scanf("%lf %lf",&x1,&x2);
        double *a; //double str[N],*a; 修改
        //a=str;  //a=&str;       // 修改
        //printf("%.2f",*a);
        a=getPart(src,n,x1,x2,&m); //a=getPart(src,n,x1,x2,m); 修改
        for(i=0;i<m;i++){
            printf("%.2lf",a[i]);  //printf("%.2lf",str[i]); 修改
        }
        return 0;
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 12月12日
  • 已采纳回答 12月4日
  • 修改了问题 11月28日
  • 创建了问题 11月28日

悬赏问题

  • ¥15 2024-五一综合模拟赛
  • ¥15 下图接收小电路,谁知道原理
  • ¥15 装 pytorch 的时候出了好多问题,遇到这种情况怎么处理?
  • ¥20 IOS游览器某宝手机网页版自动立即购买JavaScript脚本
  • ¥15 手机接入宽带网线,如何释放宽带全部速度
  • ¥30 关于#r语言#的问题:如何对R语言中mfgarch包中构建的garch-midas模型进行样本内长期波动率预测和样本外长期波动率预测
  • ¥15 ETLCloud 处理json多层级问题
  • ¥15 matlab中使用gurobi时报错
  • ¥15 这个主板怎么能扩出一两个sata口
  • ¥15 不是,这到底错哪儿了😭