简明现代魔法 -> 数据结构 -> 用一维数组模拟二维数组

用一维数组模拟二维数组

2010-08-05

下面是5*6的表格数据,用一维数组存储。遍历,还是二维数组的遍历方式。第一个循环是行的循环,第二个是列的循环。

以行的方式:

#include <stdio.h>
#include <stdlib.h>
#define ROW 6
#define column 5

int main(int argc, char *argv[])
{
	int classes[30] =  {0,2,0,2,0,
						1,4,1,4,1,
						5,0,5,0,5,
						0,0,0,0,0,
						3,0,3,0,3,
						0,0,0,0,0};
	int sum;
	int i,j;
	sum = 0;
	for(i=0; i<6; i++)
	{
		for(j=0; j< 5; j++)
		{
			if(classes[i*column+j] != 0)
			{sum++;}
		}      
	}                 
	printf("课程总数: %d\n",sum);                 
	system("PAUSE");    
	return 0;
}

下面是列为主的代码:

#include <stdio.h>
#include <stdlib.h>
#define ROW 6
#define column 5

int main(int argc, char *argv[])
{
	int classes[30] =  {	0,2,0,2,0,
						1,4,1,4,1,
						5,0,5,0,5,
						0,0,0,0,0,
						3,0,3,0,3,
						0,0,0,0,0 };
	int sum;
	int i,j;
	sum = 0;
	for(i=0; i<6; i++)
	{
		for(j=0; j< 5; j++)
		{
			if(classes[j*ROW+i] != 0)
			{sum++;}
		}      
	}                 
	printf("课程总数: %d\n",sum);                 
	system("PAUSE");    
	return 0;
}
随机文章推荐
网站分类


注:如需转载本文,请注明出处(原文链接),谢谢。更多精彩内容,请进入简明现代魔法首页。

进入新博客
喜欢本文,就分享它吧
给我留言
您的名字:
您的邮件:
您的网站:


 

copyright © 2009 简明现代魔法    学习、分享、进步

power by Gonn 感谢所有关心和支持本站的朋友们