小白12121 2021-07-03 11:53 采纳率: 100%
浏览 94
已采纳

C语言 综 合 应 用 题

1.请下载本页面下面的素材“blank1.c”文件,在该文件的下划线填入正确的内容并把下划线删除,使程序得出正确的结果(不得增行或删行,也不得更改程序的结构!),操作完成后以原文件名上交。

给定程序中,函数fun的功能是:计算形参x所指数组中N个数的平均值(规定所有数均为正数),作为函数值返回;并将大于平均值的数放在形参y所指数组中,在主函数中输出。

例如,有10个正数:46 22 39 5 24 29 33 13 17 19,平均值应为:24.7

大于平均值的数为:46 39 29 33

2.请下载本页面下面的素材“modi1.c”文件,该文件中函数fun的功能是:统计字符串中各元音字母(即:A、E、I、O、U)的个数。注意:字母不分大、小写。

例如:若输入:THIs is a boot,

则输出应该是:1、0、2、2、0。

请改正程序中的错误,使它能得出正确结果,完成后以原文件名上交。

注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!

3.请下载本页面下面的素材“prog1.c”文件,编写其中的fun函数:

学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中,请编写函数fun,它的功能是:把指定分数范围内的学生数据放在b所指的数组中,分数范围内的学生人数由函数值返回。例如,输入的分数是60 69,则应当把分数在60到69之间的学生数据进行输出(含60和69)。主函数中将60放在变量low中,把69放在变量heigh中。

请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的语句,完成后以原文件名上交。
modi1.c如下:
#include <conio.h>
#include <stdio.h>
#include <stdlib.h>
void fun(char *s,int num[5])
{ int k,i=5;
for (k=0;k<i;k++)
/************found************/
num[i]=0;
for (;*s;s++)
{i=-1;
/************found************/
switch(s)
{case 'a':case 'A':{i=0;break;}
case 'e':case 'E':{i=1;break;}
case 'i':case 'I':{i=2;break;}
case 'o':case 'O':{i=3;break;}
case 'u':case 'U':{i=4;break;}
}
if (i>=0)
num[i]++;
}
}

main()
{char s1[81]; int num1[5],i;
system("cls");
printf("\nPlease enter a string:");gets(s1);
fun(s1,num1);
for (i=0;i<5;i++) printf("%d",num1[i]);printf("\n");
}
prog1.c如下:
#include <stdio.h>
#define N 16
typedef struct
{ char num[10];
int s;
} STREC;
int fun( STREC *a,STREC *b,int l, int h )
{

}
main()
{ STREC s[N]={{"GA005",85},{"GA003",76},
{"GA002",69},{"GA004",85},{"GA001",96},
{"GA007",72},{"GA008",64},{"GA006",87},
{"GA015",85},{"GA013",94},{"GA012",64},
{"GA014",91},{"GA011",90},{"GA017",64},
{"GA018",64},{"GA016",72}};
STREC h[N],tt;FILE *out ;
int i,j,n,low,heigh,t;
printf("Enter 2 integer number low & heigh : ");
scanf("%d%d", &low,&heigh);
if ( heigh< low ){ t=heigh;heigh=low;low=t; }
n=fun( s,h,low,heigh );
printf("The student's data between %d--%d :\n",low,heigh);
for(i=0;i<n; i++)
printf("%s %4d\n",h[i].num,h[i].s);
printf("\n");
}
blank1.c如下:
#include <stdio.h>
#include <stdlib.h>
#define N 10
double fun(double x[],double *y)
{ int i,j; double av;
/found/
av=1;
/found/
for(i=0; i<N; i++) av = av + __2__;
for(i=j=0; i<N; i++)
/**********found**********/
if(x[i]>av) y[3]= x[i];
y[j]=-1;
return av;
}
main()
{ int i; double x[N],y[N];
for(i=0; i<N; i++){ x[i]=rand()%50+5; printf("%4.0f ",x[i]);}
printf("\n");
printf("\nThe average is: %f\n",fun(x,y));
for(i=0; y[i]>=0; i++) printf("%5.0f ",y[i]);
printf("\n");
}

  • 写回答

1条回答 默认 最新

  • qfl_sdu 2021-07-03 13:19
    关注

    代码用代码段贴出来,或者截图也行,不然会缺东西
    第一题:
    第一个空:0
    第二个空:x[i]
    第三个空:j++
    不知道后面显示的地方是不是要改的。

    第二题:
    第一个空:num[0]++;
    第二个空:num[1]++;
    第三个空:num[2]++;
    第四个空:num[3]++;
    第五个空:num[4]++;

    第三题

    int fun( STREC *a,STREC *b,int l, int h )
    {
    int k,j=0;
    for(k=0;k<N;k++)
    {
    if(a[k].s >=l && a[k].s<=h)
    b[j++]=a[k];
    }
    return j;
    
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 逻辑谓词和消解原理的运用
  • ¥15 三菱伺服电机按启动按钮有使能但不动作
  • ¥15 js,页面2返回页面1时定位进入的设备
  • ¥200 关于#c++#的问题,请各位专家解答!网站的邀请码
  • ¥50 导入文件到网吧的电脑并且在重启之后不会被恢复
  • ¥15 (希望可以解决问题)ma和mb文件无法正常打开,打开后是空白,但是有正常内存占用,但可以在打开Maya应用程序后打开场景ma和mb格式。
  • ¥20 ML307A在使用AT命令连接EMQX平台的MQTT时被拒绝
  • ¥20 腾讯企业邮箱邮件可以恢复么
  • ¥15 有人知道怎么将自己的迁移策略布到edgecloudsim上使用吗?
  • ¥15 错误 LNK2001 无法解析的外部符号