C语言中我如果看到一个题目,我该如何着手去编写程序

[复制链接]
查看11 | 回复4 | 2012-5-4 03:21:41 | 显示全部楼层 |阅读模式
面向过程编程的一般思路:分析问题->设计流程和模块->编码和测试->改进并总结做算法问题的一般思路:先用数学方法计算分析,充分理解问题。在思考程序哪些地方应该用循环、指针或数组等细节问题之前,先要确定程序的大体框架,可以自己先试着用伪代码描述整个算法,然后再一步步的确定应该怎么编码。最后验证结果并反思能否改进算法。本题思路:1.在草稿纸上简单的分析发现,这个报数过程可以用数组来模拟。2.建一个21位的数组,数组索引代表每个人的编号,数组值代表1代表在圈中0代表离开。3.在只剩一人之前不断的循环报数,故考虑用while循环。4.while没循环一次就相当于报一个数(num++),如果此时报的数能被5整除,就把数组索引(i)处的值改为0,然后下一...
回复

使用道具 举报

千问 | 2012-5-4 03:21:41 | 显示全部楼层
首先,不要被C遮住了眼睛。如何解决问题其实是在于算法。而C只是实现算法的手段之一。你可以通过画流程图先把思路理清楚。流程图画对之后用什么语句一看就知道了。...
回复

使用道具 举报

千问 | 2012-5-4 03:21:41 | 显示全部楼层
你现在遇到的 问题大多是数据结构的问题,只要你找到一个合适的结构体再加上判断条件,你现阶段遇到的问题就迎刃而解了!就像你在上面提到的21个人报数的问题,问题的关键是循环变量的设置和标记。只要你解决了那两个问题这个题就迎刃而解了!提示:21个人都做上标记,离开的为0、留下的为1;开始时都是1,遇到五的倍数就把标记置0,标记为0的不参加报数;...
回复

使用道具 举报

千问 | 2012-5-4 03:21:41 | 显示全部楼层
解题是按出题的要求来做的,也是解题的思路。...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行