永发信息网

C语言排座位问题

答案:2  悬赏:50  手机版
解决时间 2021-04-26 22:59
C语言排座位问题
最佳答案
#include
#define N 50
#define CALL 3

int main()
{
int i,*p,callnumber,chu,h[N] = {0};

for (i = 0; i < N; i++)
{
*(h+i) = i+1;
}

p = h;
chu = 0;
callnumber = 0;

while(chu {
if (*p != 0)
{
callnumber++;
}
if (callnumber == CALL)
{

chu++;
printf("%5d",*p);
*p = 0;
callnumber = 0;
}
p++;
if (p==h+N)
{
p = h;
}
}

return 0;
}
程序如上,可以满足你要求,在你的程序基础上修改的。你逻辑有问题,如果到达数组尾部要从头输出。
另外
*p=0;
chu++;
printf("%5d",*p);
这里你前面已经赋值为0
输出肯定是0了。
全部回答
我觉得做这个题目有几个重点,你找一下自己有没有就行了。
1、当我第一遍这50个人都报完数后,其实只有16个人报了3出去啦,然后第49个人是报1,第50个人是报2,那第一个人就接着报1,以此轮回。可以用一句if(caller==50) caller = 1;else caller++;
2、已经报过了3的就出局啦,可以用一个循环if(callnumber==3)a[k++] = 0;while(a[k]!=0){...}。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
问一下成都龙泉大自考招生办的电话是多少,还
新里塞尚公馆西门地址有知道的么?有点事想过
[士兵突击MV]—年少轻狂 幸福时光 这个MV的
请教凉拌菜怎样做?
惦念死去的朋友的句子,惦念死者心痛的句子
郴州每个人有预防甲流感预苗针打吗
2010年漳州中考一中录取线是多少
360在断网的情况下怎么检测到电脑漏洞的
爱一个人难、我觉得被许多人爱也好难喔、你们
为什么希腊城邦林立,在古代始终未能形成统一
大波板糖该咋吃
电脑QQ软件问题
富士J10说明书
高建国到底是谁
射手座20109月貴人是誰?
推荐资讯
新飞飞功勋够怎么不升爵位
华硕笔记本显卡驱动不能安装
含月字的诗词句,带有月字的诗句有哪些
为什么我的手机登陆3G版的空间会显示出储存空
我的锁不小心被锁了怎么才能打还啊
养花在哪一块
生活....
qq拼音好用么?
手机怎么还不可以玩游戏
英雄岛防沉迷系统为什么说是未成年或未填
游戏出了点问题
高级群是否为永久?
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?