广告广告
  加入我的最爱 设为首页 风格修改
首页 首尾
 手机版   订阅   地图  繁体 
您是第 2279 个阅读者
 
发表文章 发表投票 回覆文章
  可列印版   加为IE收藏   收藏主题   上一主题 | 下一主题   
terryshao
数位造型
个人文章 个人相簿 个人日记 个人地图
初露锋芒
级别: 初露锋芒 该用户目前不上站
推文 x1 鲜花 x72
分享: 转寄此文章 Facebook Plurk Twitter 复制连结到剪贴簿 转换为繁体 转换为简体 载入图片
推文 x0
[C/C++] TC问题二:阵列
#include <stdlib.h>
#include <stdio.h>
#define ROWS 10 /* number of rows in array */
#define COLUMNS 2 /* number of columns in array */

void main()
{
float agents ;
char strtmp ;
int index=0, outdex ;

printf("Enter 3-digit agent numbers,\n") ;
printf("then travel expenses (007 1642.50)\n") ;
printf("Enter 0 0 to quit.\n") ;

do /* get list of agents and expenses */
{
printf("Agent's number and expense: ");
scanf("%f %f", &agents, &agents);
}
while ( agents != 0 ) ;

for (outdex=0; outdex<index-1; o ..

访客只能看到部份内容,免费 加入会员 或由脸书 Google 可以看到全部内容




献花 x0 回到顶端 [楼 主] From:台湾中华电信 | Posted:2006-04-08 03:40 |
gamewalk
数位造型
个人文章 个人相簿 个人日记 个人地图
初露锋芒
级别: 初露锋芒 该用户目前不上站
推文 x0 鲜花 x18
分享: 转寄此文章 Facebook Plurk Twitter 复制连结到剪贴簿 转换为繁体 转换为简体 载入图片

1. 第一个红色部分 outdex<index-1 这里我的看法是 他结束的时候 输入的次数刚好会多一 因为他每做一次都在前面那个while里面用index++ 所以最后输入0,0那一次要减掉....

2. 第二个红色部分 size-- 意思跟第一个红色部分一样也是剪掉最后那一个都为0值的那一列(不过我在想他为什么不用size=size-1,这样不是比较不会误会吗? ~"~)

3.至于最后一个红色部分,他的方法没错这是找最大值的一种做法,先假设一个最大值把他取出来跟所有阵列内的元素做比较,如果找到比他大的就把他替换掉....最后整个阵列元素比完以后max就是最大值了...

希望这样有回答到你的问题...


献花 x0 回到顶端 [1 楼] From:台湾永大数位动力公司 | Posted:2006-04-08 11:46 |
terryshao
数位造型
个人文章 个人相簿 个人日记 个人地图
初露锋芒
级别: 初露锋芒 该用户目前不上站
推文 x1 鲜花 x72
分享: 转寄此文章 Facebook Plurk Twitter 复制连结到剪贴簿 转换为繁体 转换为简体 载入图片

那只是要带入次数而不是实际数值啰??
那这样一来我大致上了解了...感谢
不过...假设那部分我还要多研究一下...因为不是很了解整个判断过程

还是大大可以解释一下那部份呢?
我的意思是说解释一下他写下来的流程


献花 x0 回到顶端 [2 楼] From:台湾中华电信 | Posted:2006-04-08 14:27 |
gamewalk
数位造型
个人文章 个人相簿 个人日记 个人地图
初露锋芒
级别: 初露锋芒 该用户目前不上站
推文 x0 鲜花 x18
分享: 转寄此文章 Facebook Plurk Twitter 复制连结到剪贴簿 转换为繁体 转换为简体 载入图片

我不太懂你要我解释什么是指for回圈那边的流程吗?(我觉得那边不太需要讲解,for回圈就是那个样子阿~"~,而且刚开始学程式应该都会先教你怎么用这些东西)...如果你是新手的话建议你先把那一部分的 for回圈 跟 if判断式 搞懂,网路上用 google 找一找应该有吧,不过也要确定是你那种语言的不然有些其他语言也有类似的回圈反而会让你产生混淆,等你了解那些东西以后最后在回来看这个程式吧...

for (dex=1; dex<size2; dex++)
{
  if ( max < list2[dex] )
  {
  max = list2[dex] ;
  }
}

真的要我讲的话大概就是这样吧,我这里 ' : ' 是两个值比较的意思
max : list2[1]     如果 max < list2[1] ,则max用list2[1]的值带入,如果 max > list2[1]就不做任何事
max : list2[2]     (其他依此类推)
    .
    .
    .
max : list2[size2-1]


[ 此文章被gamewalk在2006-04-09 02:53重新编辑 ]


献花 x0 回到顶端 [3 楼] From:台湾永大数位动力公司 | Posted:2006-04-09 02:25 |
terryshao
数位造型
个人文章 个人相簿 个人日记 个人地图
初露锋芒
级别: 初露锋芒 该用户目前不上站
推文 x1 鲜花 x72
分享: 转寄此文章 Facebook Plurk Twitter 复制连结到剪贴簿 转换为繁体 转换为简体 载入图片

大大可能误会了...IF跟FOR的用法我看了很多遍...我懂怎么用
只是想知道作者在写的时候为什么要这样写
因为感觉写的很简短...属于老手在写的判断式....
其实我在看书的同时...比较希望是写的很拢长...但是看的很明白
不知道还有没有别种写法


献花 x0 回到顶端 [4 楼] From:台湾中华电信 | Posted:2006-04-09 09:56 |
gamewalk
数位造型
个人文章 个人相簿 个人日记 个人地图
初露锋芒
级别: 初露锋芒 该用户目前不上站
推文 x0 鲜花 x18
分享: 转寄此文章 Facebook Plurk Twitter 复制连结到剪贴簿 转换为繁体 转换为简体 载入图片

抱歉那是我误会了..好吧..我想这个写法要在详细的话大概也只是加一些注解在旁边或者是把else也给他写出来在多一些注解....
解说:
我先假设List阵列里面有5个值好了,依序是 25 , 12 , 14 , 47 ,30
一开始先定一个最大值,取第一个是因为方便再加上照流程的顺序也比较好做MAX=List2[0],也就MAX=25

次数   MAX   List[0]   List[1]   List[2]   List[3]   List[4]
  1   25     25     *12     14     47     30   (因为25>12,所以MAX值还是25)
  2   25     25     12     *14     47     30   (因为25>14,所以MAX值还是25)
  3   25     25     12     14     *47     30   (因为25<47,所以MAX就换成47)
  4   47     25     12     14     47     *30   (因为47>30,所以MAX值还是47)
最后最大值就是47,' * ' 是目前跟MAX比的那个数值...
这张表可能没有对的很齐(我用txt编辑的可是放上来就歪掉了,如果真的太乱就复制到txt看吧,应该可以),但是大概也可以知道个顺序


献花 x0 回到顶端 [5 楼] From:台湾永大数位动力公司 | Posted:2006-04-09 15:04 |

首页  发表文章 发表投票 回覆文章
Powered by PHPWind v1.3.6
Copyright © 2003-04 PHPWind
Processed in 0.055882 second(s),query:16 Gzip disabled
本站由 瀛睿律师事务所 担任常年法律顾问 | 免责声明 | 本网站已依台湾网站内容分级规定处理 | 连络我们 | 访客留言