下列给定的程序中,函数fun()的功能是: 计算并输出k以内最大的6个能被7或11整除的自然数之和。K的值由主函数传入,若k的值为500,则函数的值为2925。
请改正程序中的错误,使它能得到正确结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。
试题程序:
include<stdio.h>
include<conio.h>
int fun(int k)
{
int m=0,mc=0,j;
/*************found*************/
while(k>=2)&&(mc<6)
{
/*************found*************/
if((k%7=0)||(k%ll=0))
{
/*************found**************/
m=k;
mc++;
}
k--;
}
return m;
}
main()
{
clrscr();
printf("%d\n",fun(500));
}
第1题:
请编写函数fun,它的功能是:计算并输出n(包括n)以内能被5或9整除的所有自然数的倒数之和。
例如,在主函数中从键盘给n输入20后,输出为:s=0.583333。注意:要求n的值不大于100。
部分源程序在文件PROGl.C中。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。


解析:该程序功能是计算并输出n(包括n)以内能被5或9整除的所有自然数的倒数之和。解题过程首先求出能被5或9整除的所有自然数,然后在此基础上求得这些数的倒数之和。
第2题:
给定程序MODll.C中函数fun的功能是:计算小于形参k的最大的10个能被13或17整除的自然数之和。k的值由主函数传入,若k的值为500,则函数值为4622。
请改正程序中的错误,使程序能输出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!

第3题:
编写函数fun,它的功能是:求小于形参n同时能被3与7整除的所有自然数之和的平方根,并作为函数值返回。
例如,若n为1000时,程序输出应为:s=153.909064。
注意:部分源程序在文件PROGl.C中。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
试题程序:

第4题:
请编写一个函数fun(),它的功能是:求出1到m(含m)之内能被7或11整除的所有整数放在数组a中,通过n返回这些数的个数。
例如,若传给m的值为50,则程序输出:
7 11 14 21 X 28 33 35 42 44 49
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
试题程序:
include<conio.h>
include<stdio.h>
define M 100
void fun(int m, int *a, int *n)
{
}
main()
{
int aa[M],n,k;
clrscr();
fun(50,aa,&n);
for(k=0;k<n; k++)
if((k+1)%20==0) /*每行输出20个数*/
{printf("%4d",aa[k]);
printf("\n");
}
else
printf("%4d",aa[k]);
printf("\n");
}
第5题:
下列给定的程序中,函数proc()的功能是:计算并输出k以内最大的10个能被15或18整除的自然数之和,k的值由主函数传人。若k的值为800,则函数的值为7605。
请改正程序中的错误,使它能得出正确的结果。
注意:不要改动main()函数,不得增行或删行,也不得更改程序的结构。
试题程序:


(1)错误:if((k%15=0)jl(k%18=0))
正确:if((k%15==0)||(k%18==0))
(2)错误:缺少大括号
正确:在k——;后加)
【解析】题目中要求能被15或18整除的自然数,判断整除条件是将该数分别对15和18取余,若余数等于0,说明能整除,否则不能整除,判断两数是否相等应该用“==”而不是“=”;在c语言中,符号{和}一定是成对出现的,因此在语句k——;后要加上符号}。