0
我试图写在C.问题的代码的代码如下:printf的意外停止工作
#include<stdio.h>
int cop(int a,int b)
{
int c,d,e,f,g;
if(a>b)
{
c=a;
a=b;
b=c;
}
while(c!=0)
{
c=b%a;
b=a;
a=c;
}
return b;
}
int main()
{
int i=1, j=1, k, a, b, c, d, e, f, g=1;
scanf("%d",&k);
int q=0;
for(q=k;q>0;q--)
{
scanf("%d",&a);
while(g==1)
{
b=j+i;
i=j;
j=b;
g=cop(j,a);
printf("%d\n",g);
}
printf("%d %d\n",g,j);
j=1;i=1;g=1;
}
return 0;
}
当我给输入作为3 3 5 161
它打印
1
3
3 3
1
1
5
5 5
1
1
1
1
1
7
7 21
当我发表声明printf("%d\n",g)
并执行相同的输入我得到的输出如下:
3 3
5 3
161 3
所以,我的疑问是,为什么我没有收到: -
3 3
5 5
7 21
这不是一个“怀疑”。 – unwind
那么你想要做什么?通过阅读你的代码我无法理解。输入“3 3 5 161”后我得到了不同的结果。 – halfelf
听起来你应该用附加的调试器来运行你的代码。 – RichardTowers