问题补充说明:1.定义函数intfa(inta),求[50,1000]之间能被8整除的所有数之和。2.一个数列,它的头三个数为4,5,6,以后的每个数都是其前三个数的和,求此数列的第10项。... 1.定义函数int fa(int a ),求[50,1000]之间能被8整除的所有数之和。 2.一个数列,它的头三个数为4,5,6,以后的每个数都是其前三个数的和,求此数列的第10项。 展开
根据题意:
题目1:函数参数是除数(这里传值8),返回满足条件的数字和。
题目2:函数参数是要找的项目数(这里传值10),返回对应项的值。
#i话终己施出细致视生nclude<stdio.h>
#defineMIN50
#defineMAX1000
intfa(i来自nta);//对应题目1的函数,参数:要除的数,返回可以被整除的数之和
intgetByIndex(intn);//对应题目2,返回数列第n项,错误返回-1
intmain()
{
printf("1、360问答%d~%d之间能被%d整除的数字之和为:%d\n",MIN,MAX,8,fa(8));
printf("2、数列头线掉雷存脸着振即族慢正三个数为4,5,6,以后的每个数为前三数和,求此数列第%d项:%d\n",10,getByIndex(10));
return0;
}
intfa(inta)氢数肉宜//对应题目1的函数,参数:要除的数,返回可以被整除的数之和
{
inti,sum=0;
for(i=MIN;i<=MAX;i++)
if(i%a==0)
sum+=i;
returnsum;
}
intgetByI却粮措弦义这天ndex(intn)//对应题目2,返回数列第n项,错误返回-1
{
if(n<1)
return-1;
inti,nums[n];
nums[0]=4,nums[1]=5,nums[2]=6;
for(i=3;i<n;i++)
nums[i]=nums[i-1]+nums[i-2]+nums[i-3];
returnnums[n-1];
}
标签:C语言,编程