c程序报数问题
n个人围成一圈,1,2,3报数,报到3的人退出,输出最后留下的是第几号(最初的序号)。编写函数,n作函数参数,函数返回结果。请以8_6_1.c命名本程序。 #define m 3 int baoshu(int n); main( ) { int n,z; printf("input number of "); scanf("%d",&n); z=baoshu(n); printf("the last one is NO.%d",z); }
/***************************theJosephugame*************************/#include/*weusethelink-list*/structnode{intdata;structnode*next;};intJosephu(int,int,structnode*);voidmain(){inttotal,interval,i;structnode*Head;printf("Inputthetotalperson:");scanf("%d",&total);printf("Inputtheinterval:");scanf("%d",&interval);/*mallocthememory,makealooplink-list*/Head=(structnode*)malloc(sizeof(structnode)*total);for(i=1;idata=i;(Head+i-1)->next=Head+i;/*printf("%d",(Head+i-1)->data);*/}(Head+total-1)->data=total;(Head+total-1)->next=Head;i=Josephu(total,interval,Head);printf("\nThelastpersonisNo。
%d\n",i);free(Head);system("pause");}intJosephu(inttotal,intinterval,structnode*Head){inti; (i=1;inext->data);Head->next=Head->next->next;Head=Head->next;total--;}else{Head=Head->next;}}if(total!=1)gotoloop;elsereturnHead->data;}。
答:*p++=i+1; p=a; while(m<n-1) { if(*p!=0) { x++; if(x%3==0) { *p=0; m++; } } p++; ...详情>>
问:挺简单的一C函数,不过我是初学者,暂时还不会写,请好心人多多帮忙!
答:int mystrlen(char *str) { int n = 0; while (*str) { n++; str++;} return n; } voi...详情>>