77问答网
所有问题
当前搜索:
报数有n个人围成一圈
C语言题,
n个人围成一圈
,从第一个人开始喊123喊到3的就退出,一圈一圈...
答:
= 0) //如果这个位置上面的
人
还在的话就count++,就进行
报数
count++; //报数就+1if (count == m){a[j] = 0; //报数正好是3的话,这个位置的人退出,置零count = 0; //报数也置零zongrenshuleft--;//总人数减少一个}j++; //序号向后if (j >
n
-
1
)j = j%n;}for (...
n个人围成一
个圈,编号依次为1~n。从第1号开始
报数
,报到m的倍数的人离...
答:
思路如下:int
n
, m, i, j, no,left;int pp[256];printf("Please input n and m:\n");scanf("%d,%d”,&n,&m);for(i=0; i<n; i++) pp[i]=i;left=n; no=0;while(left>1){ for(i=0; i<left; i++, no++){ if(no==m){ for(j=i; j<left-1;...
...
有n个人围成一圈
,顺序排号,从第一个人开始(从1-
答:
include <stdio.h> define N 10 void main(){ char student[N];//
N个人
,
1
表示未退出,0表示已经退出 int out[N];//退出的人的号码记录 int count = -1;//循环计数 0,1,2 <=> 1-3 int num_out = -1;//退出号码记录的数组的下标 memset(student, 1, sizeof(student));//将...
4.c语言编
有n个人围成一圈
,顺序排号。从第一个人开始
报数
(从1到m报数...
答:
include <stdio.h> include <stdlib.h> define MAX 100 main(){ int a[MAX];int m,
n
;int i,k,length;printf("请输入n和m(n>m),中间以空格结束!\n当只剩余一
个人
时候,自动结束,例如输入 2 1;不会把2
个人
都删除了.\n当删除了第一个人之后,则先结束程序,于是输出2\n");scanf("%d%d...
c语言:
有n个人围成一圈
,从第一个人开始
报数1
、2、3,每报到3的人退出圈...
答:
cout<<"请输入人数
n
:";cin>>n;for(i=1;i<=n;i++){ if(i==1){ first=p=(node*)malloc(sizeof(node));if(p==0)return 0;} else { q=(node*)malloc(sizeof(node));if(q==0)return 0;p->next=q;p=q;} cout<<"请输入第 "<<i<<"
个人
的密码: ";cin>>(p->code...
C语言:
有n个人围成一圈
,按顺序从1到n编号。从第一个人开始
报数
,报数3...
答:
less than 10000 \
n
"; printf("%d is out of range of valid values.",n); printf("Please Enter again :\n"); scanf("%d", &n); } for (int i=2;i<=n;++i) s=(s+M)%i; printf("Last No. is %d\n",s+1); return 0;} ...
有n个人围成一圈
,顺序排号。从第一个人开始
报数
(从1到3报数),凡报到3...
答:
scanf("%d",&n);p=num;for(i=0;i<n;i++)(p+i)=i+
1
;i=0;k=0;m=0;while(m<n-1)//m是指出局的人数,因为
有n个人
,最后剩下一个人,所以最多出局(n-1)个人,构成循环 { if(*(p+i)!=0)//判断这个号(原来的序号)是否出局 k++;//这个号没有出局,就
报数
,计数器加1...
C语言:用指针:
n个人围成一圈
,依次从1到n编号。从编号为1的人开始
报数
...
答:
include <stdio.h> include <stdlib.h> int last(int
n
){ int i,a[1000];int total=0,sum=0;for(i=0;i<n;i++)a[i]=1;i=0;while(1){ sum+=a[i];if (sum==3){ a[i]=0;total++;sum=0;if (total==n) return i+1;} i++;i=i%n;} } int main(){ int n,i;...
设
有n个人围
坐
一圈
并按顺时针方向从1到n编号,从第s个人开始进行1到m...
答:
for (i =
1
; i <=
n
; i++) /*定义数组a[100],按顺序赋值 */ a[i] = i;while (n != 0)josegh ( );system("pause");} void josegh ( ) /*每当出局一
个人
,n减1,数组重新排列*/ { out = s + m - 1;while (out > n)out-= n;printf ("o = %d\n",a[ou...
java编程,
有n个人围成一圈
,顺序排号,从一号到n号,从第一个开始
报数
...
答:
person;for (int i =
1
; i <=
n
; i++) {person = new Person(i);personQuan.addPerson(person);}n = 0;person = personQuan.first;while (personQuan.first != personQuan.last) {n++;if (n % 3 == 0) {//System.out.println("第" + n/3 + "次移除编号:" + person....
<涓婁竴椤
1
2
3
4
5
6
7
8
9
10
涓嬩竴椤
灏鹃〉
其他人还搜