牛骨文教育服务平台(让学习变的简单)
博文笔记

C/C++ 二维动态数组的分配和赋值

创建时间:2016-09-22 投稿人: 浏览次数:273


平台:Visual Studio 2013


近期找工作中,错过了阿里和腾讯的笔试,百度的笔试也让我措手不及。还好有个赛码网能让我练练在线笔试题。 最近笔试题总是会调试不出来,主要是存在着输入输出不熟悉以及不知道二维数组如何建立。

先解决二维数组的建立问题~

明晚小米笔试加油~


#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<stdlib.h>
#include<iostream>
using namespace std;
int main()
{
	//C语言
	/*int a,b;
		scanf("%d %d
", &a, &b);
		int **array;
		array = (int **)malloc(b*sizeof(int *));
		for (int i = 0; i < b;i++)
		{
		array[i] = (int*)malloc(a*sizeof(int));
		}
		for (int i = 0; i < b; i++)
		{
		for (int j = 0; j < a; j++)
		scanf("%d", &array[i][j]);

		}*/

	//C++
	//经测试(对比旧电脑demo+baidutest项目中的二维数组.cpp),若cin后没有代码,二维数组会无限输入下去  所以要在输入之后搞点事情才行
	int a, b; 
	while (cin >>a>>b)
	{
		int **array = new int*[a];
		for (int i = 0; i < b; i++)
		{
			array[i] = new int[b];
		}	
		for (int i = 0; i < a; i++)
		{
			for (int j = 0; j < b; j++)
			{
				cin >> array[i][j];
			}
		}
		for (int i = 0; i < a; i++)
		{
			for (int j = 0; j < b; j++)
			{
				cout<< array[i][j]<<" "<<endl;
			}
		}
	}
	
	system("pause");
	return(0);
	
}
其实还挺简单的~
接着加油~哈哈哈哈~
声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。