C/C++ 二維動態陣列的分配和賦值
阿新 • • 發佈:2019-02-10
平臺: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\n", &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); }
接著加油~哈哈哈哈~