13个人围成一圈,从第一个人开始报号1,2,3.凡报道3者退出 最后剩几号 这个C++的题目 为什么我的程序不行求高手 以下是我的思路 为什么我这样写程序不行呢 第一轮输出应该是1 12 03 04 05 06 07
来源:学生作业帮助网 编辑:作业帮 时间:2024/06/18 00:13:43
![13个人围成一圈,从第一个人开始报号1,2,3.凡报道3者退出 最后剩几号 这个C++的题目 为什么我的程序不行求高手 以下是我的思路 为什么我这样写程序不行呢 第一轮输出应该是1 12 03 04 05 06 07](/uploads/image/z/13555720-64-0.jpg?t=13%E4%B8%AA%E4%BA%BA%E5%9B%B4%E6%88%90%E4%B8%80%E5%9C%88%2C%E4%BB%8E%E7%AC%AC%E4%B8%80%E4%B8%AA%E4%BA%BA%E5%BC%80%E5%A7%8B%E6%8A%A5%E5%8F%B71%2C2%2C3.%E5%87%A1%E6%8A%A5%E9%81%933%E8%80%85%E9%80%80%E5%87%BA+%E6%9C%80%E5%90%8E%E5%89%A9%E5%87%A0%E5%8F%B7+%E8%BF%99%E4%B8%AAC%2B%2B%E7%9A%84%E9%A2%98%E7%9B%AE+%E4%B8%BA%E4%BB%80%E4%B9%88%E6%88%91%E7%9A%84%E7%A8%8B%E5%BA%8F%E4%B8%8D%E8%A1%8C%E6%B1%82%E9%AB%98%E6%89%8B++%E4%BB%A5%E4%B8%8B%E6%98%AF%E6%88%91%E7%9A%84%E6%80%9D%E8%B7%AF+%E4%B8%BA%E4%BB%80%E4%B9%88%E6%88%91%E8%BF%99%E6%A0%B7%E5%86%99%E7%A8%8B%E5%BA%8F%E4%B8%8D%E8%A1%8C%E5%91%A2+%E7%AC%AC%E4%B8%80%E8%BD%AE%E8%BE%93%E5%87%BA%E5%BA%94%E8%AF%A5%E6%98%AF1+12+03+04+05+06+07)
13个人围成一圈,从第一个人开始报号1,2,3.凡报道3者退出 最后剩几号 这个C++的题目 为什么我的程序不行求高手 以下是我的思路 为什么我这样写程序不行呢 第一轮输出应该是1 12 03 04 05 06 07
13个人围成一圈,从第一个人开始报号1,2,3.凡报道3者退出 最后剩几号 这个C++的题目 为什么我的程序不行
求高手 以下是我的思路 为什么我这样写程序不行呢 第一轮输出应该是
1 1
2 0
3 0
4 0
5 0
6 0
7 0
8 0
9 0
10 0
11 0
12 0
13 0
这样啊 第二轮是这样才对啊
1 1
2 2
3 0
4 0
5 0
6 0
7 0
8 0
9 0
10 0
11 0
12 0
13 0
#include
struct man //每个同学拥有学号和报的数两个信息
{
int no;
int shu;
}man[13]={{1,0},{2,0},{3,0},{4,0},{5,0},{6,0},{7,0},{8,0},{9,0},{10,0},{11,0},{12,0},{13,0}};
void main()
{ int i=0,j=1,c=0,k;
do
{
if(man[i].shu==3) //如果报的数是3 那么计数器加1
{
c++;
}
if(man[i].shu!=3) //如果他报的数不是3,那就继续报数,用j来存现在应该报的数
{
man[i].shu=j++; //报完数应该报的数加1
}
if(j==4) //如果报的数加到4了 就把它改为1 实现123123.的报数
{
j=1;
}
i++; //报完一个同学 报下一个
if(i==13) //如果报完一轮 就使i等于0 重新报一轮
{
i=0;
}
for(k=0;k
13个人围成一圈,从第一个人开始报号1,2,3.凡报道3者退出 最后剩几号 这个C++的题目 为什么我的程序不行求高手 以下是我的思路 为什么我这样写程序不行呢 第一轮输出应该是1 12 03 04 05 06 07
/*我对你的题目理解是这样,你看有没有错:
首先,13个人围成一圈,1-2-3报数,报到3的就退出圈外,下轮报数时他就不能报了.还有报到最后剩一个人的时候就停止,输出剩下那个人的号数.程序如下:可以通过改Num的值来改变人数*/
#include
#define Num 13
struct man //每个同学拥有学号和报的数两个信息
{ int no;
int shu;
}man[Num];
void main()
{
int i,j,k,N=Num,lun=0,c=0;
for(j=0;j