c语言项目案例,,拜托了,帮忙解答一下,还有解释解释,急求。非常谢谢了。
c语言项目案例,,拜托了,帮忙解答一下,还有解释解释,急求。非常谢谢了。编写函数voidfun(intx,int*pp,int*n),它的功能是:求出x的偶数因子,并按从...
c语言项目案例,,拜托了,帮忙解答一下,还有解释解释,急求。非常谢谢了。编写函数void fun (int x, int * pp, int *n),它的功能是:求出x的偶数因子,并按从小到大的顺序放在pp所指的数组中,这些因子的个数通过形参n返回(假设pp指向足够大的空间)。如,若x中的值为24,则有6个数符合要求,它们是2,4,6,8,12,24。
展开
3个回答
展开全部
#include <stdio.h>
void f(int x, int *pp, int *n)
{
int i;
int t = 0;
for(i=2;i<=x;i+=2)
{
if(x%i == 0)
{
pp[t] = i;
t++;
}
}
*n = t;
}
int main()
{
int x;
printf("请输入数字:");
scanf("%d",&x);
//变量
int pp[x];
int n = 0;
f(x, pp, &n);
//输出
printf("偶数因子个数是:%d\n",n);
if(n != 0)
{
printf("分别是:");
int i;
for(i=0;i<n;i++)
{
printf("%d\t",pp[i]);
}
}
printf("\n");
return 0;
}
追问
谢谢了,😊,,对了,能不能给我讲讲呐?。把重要的语句注释一下,,😞😞我自己,看不懂,
展开全部
#include <stdio.h>
void fun(int x,int *pp,int *n){
int i;
for(*n=0,i=2;i<=x;i+=2)
if(x%i==0)
pp[(*n)++]=i;
}
int main(int argc,char *argv[]){//Look at...
int x,n,p[40],i;
for(x=10;x<200;x+=10){
printf("%3d:\t",x);
fun(x,p,&n);
for(i=0;i<n;printf(" %d",p[i++]));
printf("\n");
}
printf("\n");
return 0;
}
更多追问追答
追问
能不能帮我注释一下呀,,或者,讲解讲解,,拜托了,
追答
#include <stdio.h>
void fun(int x,int *pp,int *n){//这个函数是题目要求的答案
int i;
for(*n=0,i=2;i<=x;i+=2)//用2至x的偶数依次去除x建立循环
if(x%i==0)//能整除的话
pp[(*n)++]=i;//就把i记入pp,并将个数*n增1
}
int main(int argc,char *argv[]){//这个不必说了,只是举例验证一下函数fun的正确性
int x,n,p[40],i;
for(x=10;x<200;x+=10){
printf("%3d:\t",x);
fun(x,p,&n);
for(i=0;i<n;printf(" %d",p[i++]));
printf("\n");
}
printf("\n");
return 0;
}
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询