C语言编程问题请教

给出的程序可能存在语法或算法上的问题或需要补充完整,但需要修改的地方肯定在/*******Found*******/下的第一行上且每行仅有一个(类)错误,不能修改其它地方... 给出的程序可能存在语法或算法上的问题或需要补充完整,但需要修改的地方肯定在/*******Found*******/下的第一行上且每行仅有一个(类)错误,不能修改其它地方,不能修改或删除/*******Found*******/本身,遵循最少修改、符合编程规范、较通用(非别出心裁)、保持一行一条语句及{与}单独一行的原则。由于是计算机自动阅卷,修改时不能增加行或删除行,哪怕是一个空行都不行,否则可能得0分。
  注意:(1)若/*******Found*******/下有___________,则应当将___________去掉并填上相应的程序代码。
      (2)程序应当在Turbo C V2/V3、MS VC V6或GCC V3中完成编译链接并能正常运行。

程序D1018.c的功能是通过函数,将一个字符串中的元音字母复制到另一字符串,然后输出。
#include<stdio.h>
#include<string.h>

void vowel(char str1[], char str2[]);

int main(void)
{
char str1[81], str2[81];

printf("please input the string:\n");
gets(str1);

/*********Found************/
vowel(________________);
printf("the vowel string is:\n");
puts(str2);
if (strlen(str2) == 0)
{
printf("NONE!\n");
}
getch();

return 0;
}

void vowel(char str1[], char str2[])
{
int i, j = 0;
/*********Found************/
for (i=0; ________________; i++)
{
if (str1[i]=='A' || str1[i]=='E' || str1[i]=='I'
|| str1[i]=='O' || str1[i]=='U' || str1[i]=='a'
|| str1[i]=='e' || str1[i]=='i' || str1[i]=='o'
|| str1[i]=='u')
{
str2[j] = str1[i];
j++;
}
}

str2[j] = '\0';
}

程序D1019.c的功能是计算输出10个学生的平均成绩。
#include<stdio.h>

/*****Found*****/
average(double x, y);

int main(void)
{
int i;
double score, total;
double aver;

printf("Please enter the 1's grade\n");
scanf("%lf", &total);

for (i=2; i<=10; i++)
{
printf("Please enter the %d's grade\n", i);
scanf("%lf", &score);
/*****Found*****/
total = score;
}
aver = average(total, 10);
printf("The average: %f\n", aver);

return 0;
}

/*****Found*****/
average(double x, y)
{
return x / y;
}

程序D1020.c的功能是使用递归实现Fibonacci数的计算,Fn=Fn-1+Fn-2(1、1、2...,第7项为13)。
#include<stdio.h>

int f(int n);

/*****Found*****/
int main(void);
{
printf("F(7)=%d\n", f(7));

return 0;
}

int f(int n)
{
if (n <= 2)
{
/*****Found*****/
return 2;
}
return f(n - 1) + f(n - 2);
}

展开
 我来答
百度网友28b4182
推荐于2016-10-02 · TA获得超过7222个赞
知道大有可为答主
回答量:4847
采纳率:100%
帮助的人:1839万
展开全部
#include<stdio.h>
#include<string.h>

void vowel(char str1[], char str2[]);

int main(void)
{
char str1[81], str2[81];

printf("please input the string:\n");
gets(str1);

/*********Found************/
vowel(str1,str2);
printf("the vowel string is:\n");
puts(str2);
if (strlen(str2) == 0)
{
printf("NONE!\n");
}
getch();

return 0;
}

void vowel(char str1[], char str2[])
{
int i, j = 0;
/*********Found************/
for (i=0; str1[i]; i++)
{
if (str1[i]=='A' || str1[i]=='E' || str1[i]=='I'
|| str1[i]=='O' || str1[i]=='U' || str1[i]=='a'
|| str1[i]=='e' || str1[i]=='i' || str1[i]=='o'
|| str1[i]=='u')
{
str2[j] = str1[i];
j++;
}
}

str2[j] = '\0';
}

程序D1019.c的功能是计算输出10个学生的平均成绩。
#include<stdio.h>

/*****Found*****/
//这里要有返回值类型,定义变量前面要有类型
double average(double x, int y);

int main(void)
{
int i;
double score, total;
double aver;

printf("Please enter the 1's grade\n");
scanf("%lf", &total);

for (i=2; i<=10; i++)
{
printf("Please enter the %d's grade\n", i);
scanf("%lf", &score);
/*****Found*****/
total += score;//这里要相加
}
aver = average(total, 10);
printf("The average: %f\n", aver);

return 0;
}

/*****Found*****/
//这里要有返回值类型,定义变量前面要有类型
double average(double x,int y)
{
return x / y;
}

程序D1020.c的功能是使用递归实现Fibonacci数的计算,Fn=Fn-1+Fn-2(1、1、2...,第7项为13)。
#include<stdio.h>

int f(int n);

/*****Found*****/
int main(void)//这个后面分号去掉
{
printf("F(7)=%d\n", f(7));

return 0;
}

int f(int n)
{
if (n <= 2)
{
/*****Found*****/
return 1;//第一项和第二项是1
}
return f(n - 1) + f(n - 2);
}
追问
我按照你说的改好了过后,系统评分说   void vowel(str1,str2);  和  double xaverage(double x,int y)
还有错误,麻烦你再看看,好吗?
追答
好的
getch();
这句话有问题啊,里面报错

double xaverage(double x,int y)
这个我这里没问题啊
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式