建立动态数组,输入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; }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 1无用