Tải bản đầy đủ (.pptx) (14 trang)

ngôn ngữ lập trình c

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.66 MB, 14 trang )

<span class='text_page_counter'>(1)</span><div class='page_container' data-page=1></div>
<span class='text_page_counter'>(2)</span><div class='page_container' data-page=2>

*

<b>Ma trận</b>



Cách 1: Con trỏ hằng


<b>< KDL> < Tên mảng >[< Số dòng tối đa>][<Số cột tối đa>];</b>


*Ví dụ:


<i><b>int A[10][10]; //Khai báo ma trận kiểu int gồm 10 dòng, 10 cột</b></i>
<i><b>float b[10][10];//Khai báo ma trận kiểu float gồm 10 dòng 10 cột</b></i>


Cách 2 : Con trỏ


<b>< Kiểu dữ liệu > **<Tên mảng>;</b>


*Ví dụ :


</div>
<span class='text_page_counter'>(3)</span><div class='page_container' data-page=3>

*

<b>Định nghĩa kiểu dữ liệu</b>



Để đơn giản trong việc khai báo ma trận:


<i><b>#define MAX 100</b></i>


<i><b>typedef <kiểu dữ liệu> matran[MAX][MAX]; </b></i>


<b>Ví dụ: Khai báo ma trận các số nguyên a</b>


<i><b>#define MAX 100</b></i>


</div>
<span class='text_page_counter'>(4)</span><div class='page_container' data-page=4>

*

<b>Truy xuất</b>




Để truy xuất các thành phần của mảng hai chiều ta phải dựa
vào chỉ số dòng và chỉ số cột.


Cú pháp: <b>tên_ma_trận[chỉ số dòng][chỉ số cột]</b>


*

<i><b>Ví dụ: int A[3][4] = { {2,3,9,4} , {5,6,7,6} , {2,9,4,7} };</b></i>
Với các khai báo như trên ta có:


</div>
<span class='text_page_counter'>(5)</span><div class='page_container' data-page=5>

*

<b>Ma trận vuông </b>



*

Ma trận có số dòng và số cột bằng nhau


*

<i>Đường chéo chính: chỉ số dòng = chỉ số cột</i>


</div>
<span class='text_page_counter'>(6)</span><div class='page_container' data-page=6>

*

<b>Các thao tác</b>



*

Nhập/ x́t


*

Tìm kiếm


*

Đếm


*

Tính tổng/ trung bình


*

Sắp xếp dòng/ cợt


*

Xóa dòng/ cột


</div>
<span class='text_page_counter'>(7)</span><div class='page_container' data-page=7>

*

<b>Nhập/xuất ma trận số nguyên</b>




<b>Khai báo</b>


#define MAX 100


typedef int matran[MAX][MAX];


</div>
<span class='text_page_counter'>(8)</span><div class='page_container' data-page=8>

*

<b>Nhập/xuất ma trận số nguyên</b>



void NhapMT(matran a, int sd, int sc)
{


for(int i=0; i<sd; i++)
{


for(int j=0; j<sc; j++)
{


cout<<"Nhap gt ["<<i<<"]["<<j<<"]: ";
cin>>a[i][j];


</div>
<span class='text_page_counter'>(9)</span><div class='page_container' data-page=9>

*

<b>Nhập/xuất ma trận số nguyên</b>



void XuatMT(matran a, int sd, int sc)
{


for(int i=0; i<sd; i++)
{


for(int j=0; j<sc; j++)
{



cout<<a[i][j]<<"\t";
}


</div>
<span class='text_page_counter'>(10)</span><div class='page_container' data-page=10>

*

<b>Nhập/xuất ma trận số nguyên</b>



void main()


{



matran a;


int sd, sc;



cout<<"Nhap so dong cua ma tran: ";


cin>>sd;



cout<<"Nhap so cot cua ma tran: ";


cin>>sc;



</div>
<span class='text_page_counter'>(11)</span><div class='page_container' data-page=11>

*

<b>Bài tập nhập/xuất</b>



Cho ma trận số nguyên a, viết các hàm:


*

Xuất các phần tử lẻ


*

Xuất các phần tử là số nguyên tố


</div>
<span class='text_page_counter'>(12)</span><div class='page_container' data-page=12>

*

<b>Bài tập nhập/xuất</b>



Cho ma trận vuông số nguyên kích thước n, viết các
hàm:



*

Nhập ma trận


*

Xuất ma trận


*

Xuất các phần tử thuộc đường chéo chính


*

Xuất các phần tử thuộc đường chéo phụ


</div>
<span class='text_page_counter'>(13)</span><div class='page_container' data-page=13>

*

<b>Bài tập tìm kiếm</b>



Cho ma trận sớ ngun, viết các hàm:


*

Tìm phần tử lớn nhất


*

Tìm vị trí phần tử lớn nhất


*

Tìm vị trí xuất hiện đầu tiên của phần tử có giá
trị x


*

Tìm dòng có tổng lớn nhất


</div>
<span class='text_page_counter'>(14)</span><div class='page_container' data-page=14>

*

<b>Bài tập xóa</b>



Cho ma trận sớ ngun, viết các hàm:


*

Xóa dòng có chứa giá trị lớn nhất


</div>

<!--links-->

Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×