白圭青 2022-05-29 11:00 采纳率: 100%
浏览 133
已结题

建立动态数组,输入5个学生成绩,另外用一个函数检查其中有无低于60分的,输出不合格成绩

建立动态数组,输入5个学生成绩,另外用一个函数检查其中有无低于60分的,输出不合格成绩

  • 写回答

1条回答 默认 最新

  • a5156520 2022-06-01 11:25
    关注

    一个实现,供参考:

    #include <stdio.h>
    #include <stdlib.h> //提供malloc原型 
    //获取5个学生成绩输入 
    int * getScores(){
        //为存储5个学生成绩分配内存空间,让一个int指针指向这块内存, 如果需要改为浮点数类型,可以进行相应修改 
        int * scores=(int *)malloc(5*sizeof(int)); 
        
        int i=0;
        //从输入获取5个学生成绩 
        while(i<5) {
            printf("请输入第%d个学生的成绩:",i+1);
            scanf("%d",&scores[i]);
            i++;
        }
        
        return scores;  //返回指向5个学生成绩的指针 
    } 
    
    //显示成绩不及格学生的信息 
    void showNoPass(int * scores){
        
        int i=0;
        int nopass=0;
        while(i<5){
            //存在低于60分的成绩就打印信息 
            if(scores[i]<60){
                if(nopass==0){
                    printf("低于60分的分数如下:\n");
                }
                printf("%d ",scores[i]);
                nopass++;
            }
            i++;
        }
        
        //不存在低于60分的成绩也输出提示信息,也可以删去下面这段代码 
        if(nopass==0){
            printf("没有分数低于60分的成绩。\n"); 
        } 
    }
    
    int main(void){
        
        //执行获取成绩输入的函数 
        int * scores =getScores();
        //执行显示成绩不合格学生的信息的函数 
        showNoPass(scores);
        
        return 0;
        
    }
    
    

    img

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 6月17日
  • 已采纳回答 6月9日
  • 创建了问题 5月29日