真的只会一点点 发表于 2020-10-8 23:24:46

C语言题目

题目:函数编程:一颗果树上有10个桃子,现在你有一个30厘米的板凳,你先用手去摘桃子当发现不够高时在去用板凳去摘桃子,求能摘到桃子的个数。(单位厘米)
函数原型:int Getapple( int apple[], int height);
输入:桃子的高度 和 身高(默认比身高低就能摘到)
输出:摘到桃子的个数
下面是我编的,但自定义函数无法调用,请帮我改一下,谢谢。
#include <stdio.h>



int Getapple(int apple,int height){
       int i;
        int count;
for(i =0;i<10;i++){
        if(height<apple){

                printf("拿凳子");

                height += 30;

        }

        if(height>=apple){

                count++;

        }
}
}



/* run this program using the console pauser or add your own getch, system("pause") or input loop */



int main(int argc, char *argv[]) {

        int i,apple,count;

        for(i = 0;i < 10;i++){

                printf("输入数组值:");

                scanf("%d",&apple);

        }

        Getapple(apple,height);

        printf("能摘到苹果个数为%d",count);

        return 0;

}

风过无痕1989 发表于 2020-10-9 00:37:44

本帖最后由 风过无痕1989 于 2020-10-9 08:22 编辑

#include <stdio.h>

int Getapple(int *p,int height)
{
      int i;
      int count = 0;
      for(i = 0;i < 10;i++)
      {
          if(height + 30 >= *(p + i))   // 身高加凳子的高度大于等于苹果的高度视为可摘的苹果(没算手臂长度)
         {
            count++;
         }
      }
      return count;
}


int main(int argc, char *argv[]) {

      int i,*p,height,apple,count;
        p = apple;                                 // 数组的首地址赋给指针 p
      
        printf("输入你的身高:");
        scanf("%d",&height);
        printf("%d cm\n",height);

        printf("输入苹果的高度:");
      for(i = 0;i < 10;i++)
        {
            scanf("%d",&apple);
      }

      count = Getapple(p,height);

      printf("能摘到苹果个数为%d\n",count);

      return 0;

}

风过无痕1989 发表于 2020-10-9 08:21:24

不好意思,凳子写成了橙子,我编辑修改下
页: [1]
查看完整版本: C语言题目