printf函数打印不了结果是什么原因?
本帖最后由 巴巴鲁 于 2020-7-9 14:54 编辑问题:n个人围成一圈,并从1到n编号。轮流喊1,2,3,喊到3的出局,
循环往复,问最后剩的一个人的起始编号为多少?
我写的代码如下:
#include <stdio.h>
int main(void)
{
int n;
printf("请输入有几个人围成一圈:");
scanf("%d", n);
int a;
int i, j, k;
for(i = 0; i < n; i++)
{
a = i + 1;// 数组编号从1 ~ n
}
i = j = k = 0;
while(k < n - 1)
{
if(a)
{
j++;
}
if(j == 3)
{
a = 0; //当报数为3时,令其为0
j = 0;
k++;
}
i++;
if(i == n)
{
i = 0; // i = n时表示一圈结束,重新开始
}
}
for(i = 0; i < n; i++)
{
if(a) // 遍历寻找最后结果不为0的
{
printf("%d\n",a);
break;
}
}
return 0;
} 发帖子的时候,用编辑器上面的 <> 按钮发代码就不会丢i了
你的程序问题是scanf的时候,n前没有加& 不知道为什么发的时候是a,怎么就变成a了
这里的a都是a 巴巴鲁 发表于 2020-7-9 14:56
不知道为什么发的时候是a,怎么就变成a了
这里的a都是a
用编辑器上面的 <> 按钮发代码就不会了 sunrise085 发表于 2020-7-9 15:19
发帖子的时候,用编辑器上面的按钮发代码就不会丢i了
你的程序问题是scanf的时候,n前没有加&
我去,我找半天,敢情是这里错了...
用编辑器上面的<>按钮是什么意思? 巴巴鲁 发表于 2020-7-9 15:40
我去,我找半天,敢情是这里错了...
用编辑器上面的按钮是什么意思?
发代码格式 sunrise085 发表于 2020-7-9 16:04
发代码格式
好的,谢谢 Twilight6 发表于 2020-7-9 15:14
用编辑器上面的按钮发代码就不会了
主要问的是为啥输出不了...已经解决了,不过还是谢谢
页:
[1]