本帖最后由 wyycsb 于 2019-3-11 09:15 编辑
质因数分解:
#include
void function(int m)
{
int i,j;
for(i=2;i
{
if(m%i==0)
{
j=m/i;
if(j==1)
{
printf("%d",i);
return;
}
else
{
printf("%d*",i);
function(j);
}
}
}
}
int main()
{
int i;
int m,n;
scanf("%d %d",m,n);
for(i=m;i<=n;i++)
{
void function(i);
printf("%d=",i);
}
}
答案:
#include
void function(int m)
{
int i,j;
for(i=2;i<=m;i++)
{
if(m%i==0)
{
j=m/i;
if(j==1)
{
printf("%d\n",i);
return;
}
else
{
printf("%d*",i);
function(j);
break;
}
}
}
}
int main()
{
int i;
int m,n;
scanf("%d %d",&m,&n);
for(i=m;i<=n;i++)
{
printf("%d=",i);
function(i);
}
}
可能有的问题回忆不起来了,记忆中就是scanf没写&,main函数中printf位置放错,分解的函数中没有break跳出循环,for循环没有写等于,还有题目要求一行一行输出最后没有写回车符,记得还有一个地方好像是i和j写反了,但是记不太住了。
层主改错就做了这个,感觉还是比较容易拿分的,第三个看代码太长时间不够就没有做了。前面选择一共拿了90,后面一个编程一个改错一共130,20级的学弟学妹要注意做改错题,今年60分确实是出乎意料,前面选择要注意时间,层主就是时间不够导致最后只能做一个改错就放弃了另外两个题。