| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1232 人关注过本帖
标题:循环列表的笔试题
只看楼主 加入收藏
weishanhu03
Rank: 1
等 级:新手上路
帖 子:75
专家分:0
注 册:2007-4-24
收藏
 问题点数:0 回复次数:4 
循环列表的笔试题
用户输入M,N值,从1至N开始顺序循环数数,每数到M输出该数值,直至全部输出。写出C程序。
还没读懂这道题什么意思?
大家举个例子说说
谢谢!
搜索更多相关主题的帖子: 笔试 列表 数数 数值 输出 
2007-07-30 16:04
nap
Rank: 1
等 级:新手上路
帖 子:27
专家分:0
注 册:2006-4-20
收藏
得分:0 

比如一队人围成一圈,从1~n,则从1开始报数,报到m的人出圈,然后在m的下一个人为1开始报数,直到所有人出圈,但输出为出圈人最初的序号。
理解起来简单呀

2007-07-30 18:13
weishanhu03
Rank: 1
等 级:新手上路
帖 子:75
专家分:0
注 册:2007-4-24
收藏
得分:0 
怎么做啊?不会阿

2007-07-31 09:03
HJin
Rank: 6Rank: 6
等 级:贵宾
威 望:27
帖 子:401
专家分:0
注 册:2007-6-9
收藏
得分:0 
回复:(weishanhu03)循环列表的笔试题

/*---------------------------------------------------------------------------
File name: Joseph.c
Author: HJin (email: fish_sea_bird [at] yahoo [dot] com )
Created on: 7/31/2007 11:36:07
Environment: Windows XP Professional SP2 English +
Visual Studio 2005 v8.0.50727.762


Modification history:
===========================================================================

Sample output:

3 5
3 1 5 2 4

5 25
5 10 15 20 25 6 12 18 24 7 14 22 4 16 1 11 23 13 3 21 19 2 9 17 8


*/

#include <stdio.h>
#include <stdlib.h>
#include <malloc.h>

int main()
{
int *a, M, N, i, left, s;

while(scanf("%d%d", &M, &N)!=-1)
{
a = (int*)malloc(N*sizeof(int));
if(a==NULL)
exit(0);

for(i=0; i<N; ++i)
a[i] = 1;

left = N;
i=0;
s=0;
while(left>0)
{
if(i==N)
i=0;

s+=a[i];
if(s==M)
{
s=0;
--left;

a[i]=0;
printf("%d ", i+1);
}

++i;
}

printf("\n\n");

free(a);
}

return 0;
}


I am working on a system which has no Chinese input. Please don\'t blame me for typing English.
2007-08-01 02:36
weishanhu03
Rank: 1
等 级:新手上路
帖 子:75
专家分:0
注 册:2007-4-24
收藏
得分:0 
谢谢阿!

2007-08-01 18:31
快速回复:循环列表的笔试题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.019413 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved