IMG-LOGO
Trang Chủ Lập Trình C Bài tập pointer nâng cao - cấp phát động - Lập trình C
×

Lý Thuyết

01 - Nhập môn cho người mới bắt đầu - Lập trình C 02.Flowchart & ví dụ viết flowchart của phương trình bậc 1 - Lập Trình C 03. Hướng dẫn cài đặt môi trường lập trình C - Lập trình C 04. Tìm hiểu biến & kiểu dữ liệu trong C - Lập trình C 05. Toán tử & biểu thức login trong C - Lập Trinh C 06. Nhập dữ liệu trong C (scanf, printf) - Lập trình C 07. Nhập xuất dữ liệu phần 2 - Lập Trình C 08. Tìm hiểu if, else, switch trong lập trình C - Lập Trình C 09. Tìm hiểu về vòng lặp for trong C - Lập trình C 10. Tìm hiểu while, do..while trong lập trình C - lập Trình C 11. Tìm hiểu mảng 1 chiều trong C - Lập trình C 12. Tìm hiểu mảng 2 chiều - Lập Trình C 15. Tìm hiểu pointer phần 3 - Lập trình C 14. Tìm hiểu pointer phần 2 - Lập Trình C 13. Tìm hiểu pointer phần 1 - Lập Trình C 16. Tìm hiểu function trong lập trình C - Lập Trình C 17. Tìm hiểu string trong lập trình C - Lập Trình C 18. Struct trong C - Lập Trình C 1000 Bài tập C - Lập Trình C BT02 - Hướng dẫn chữa bài Fibonaci - Lập Trình C BT03. Ôn luyện - Sắp xếp trong C, con trỏ cấp phát động BT04. Hướng dẫn chừa bài tập quản lý rạp chiều phím - Lập trình C

Bài Tập

Bài tập - Chuyển flowchart sang code - Lập trình C Bài tập - Ôn tập biến + kiểu dữ liệu + scanf & printf - Lập trình C Bài tập - Nhập xuất thông tin sinh viên - Lập trình C Bài tập - Giải phương trình bậc 2 - Lập trình C Bài tập - Giải hệ phương trình bậc nhất nhất 2 ẩn - Lập trình C Bài tập - Tìm min & max - số lớn nhất & nhỏ nhất - Lập trình C Loop - Viết chương trình Reserve chuỗi - Lập trình C Loop - Switch case - Chương trình quản lý sinh viên - Lập trình C Fibonacci - Lập trình C Ôn tập While, Do .. While, For lập trình C - Lập trình C Tính tổng mảng N phần tử - Lập trình C Bài tập ôn luyện mảng 1 chiều - Lập trình C Bài tập ôn tập String - Lập trình C Bài tập ôn luyện Function - Lập trình C Tách phần tử chẵn + lẻ trong C - Lập trình mảng trong C - Lập trình C Bài toán sắp xếp trong C - Lập trình C Bài toán pointer đầu tiên - Hello pointer - Lập trình C Bài tập pointer nâng cao - cấp phát động - Lập trình C Bài tập - Quản lý hình chữ nhật - struct trong C - Lập trình C Tìm kiếm chuỗi trong chuỗi - Lập trình C Bài tập FILE - Lập trình C Bài tập - ôn tập nhật xuất và biểu tức toán học - Lập trình C Bài tập - Giải phương trình bậc 1 - giải phương trình bậc nhất - Lập trình C Ôn tập function - viết chương trình máy tính - Lập trình C Bài tập tổng quát - quản lý mảng số nguyên - Lập trình C Bài tập nâng cao pointer - Lập trình C

Examination & Test

[Test] Kiểm tra 60 phút - if, else, switch, loop trong C - Lập trình C [Test] Kiểm tra 60 phút - Lập trình C

Tài Liệu Học

C - Basic Syntax(Cú pháp cơ bản)




Bài tập pointer nâng cao - cấp phát động - Lập trình C

by GokiSoft.com - 09:37 21/12/2020 4,853 Lượt Xem

Cho menu chương trình như sau

1. Nhập vào N số nguyên

2. Hiển thị danh sách các phần tử trong mảng

3. Tính tổng các phần tử trong mảng

4. Săp xếp các phần tử trong mảng theo thứ tự tăng dần

5. Thoát

Yêu cầu :

Khai báo biến con trỏ t trong chương trình

- Khi người dùng lựa chọn 1 -> thực hiện hỏi người dùng số phần tử cần thểm vào mảng t. Sau đó nhập các phần tử được thêm vào cho mảng t

sau khi nhập -> hiển thị lại menu chương trình

- Khi người dùng lựa chọn 2 -> thực hiện theo yêu câu -> sau khi thực hiên xong -> hiển thị lại menu chương trình

- Khi người dùng lựa chọn 3 -> thực hiện theo yêu câu -> sau khi thực hiên xong -> hiển thị lại menu chương trình

- Khi người dùng lựa chọn 4 -> thực hiện theo yêu câu -> sau khi thực hiên xong -> hiển thị lại menu chương trình

- Khi người dùng lựa chọn 5 -> thoát chương trình

Theo dõi cập nhật nội dung học trên Youtube & Facebook


Bình luận



Chia sẻ từ lớp học

Đỗ Minh Tâm [community,C2010G]

Ngày viết: 11:42 21/12/2020



#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[]) {
	int N, a, b, tam, sum, sx;
	int choose;
	int *t;
	do{
		printf("\n1. Nhap vao cac so nguyen");
		printf("\n2. Hien thi danh sach cac phan tu");
		printf("\n3. Tinh tong cac phan tu");
		printf("\n4. Sap xep theo thu tu tang dan");
		printf("\nchon so: "); 
		scanf("%d",&choose);
	switch(choose){
		case 1:
			printf("\nNhap vao so nguyen N:");
			scanf("%d",&N);
			t=(int*) malloc (N*sizeof(int));
				
			for(a=0;a<N;a++){	
			printf("nhap du lieu phan tu thu %d: ",a);
			scanf("%d", t+a);
			}
			break;	
		case 2:
			for (a=0;a<N;a++){
			printf("\nt[%d] = %d ",a, t[a]);
			}
			break;
		case 3:
			sum = 0;
			for(a=0;a<N;a++){
				sum = sum + t[a];}
			printf("Tong cac phan tu trong mang la %d", sum);
			break;
		case 4:
		for(a=0;a<N-1;a++){
	         	for(b=a+1;b<N;b++) {
		         	if(*(t+a)>*(t+b)) {
			        	sx=*(t+a);
			         	*(t+a)=*(t+b);
			        	*(t+b)=sx;
			        }
				}
			}
			printf("cac phan tu thu tu tang dan la:");
			for (a=0;a<N;a++){
				printf("%d", *(t+a));
			}
			break;
		case 5:
			printf("Thoat");
			break;
		default:
		printf("Nhap sai!!!");	
		break;		
			
	}
	}while(choose<=5);
	
	return 0;
}


Nguyễn Hữu Hiếu [T2008A]

Ngày viết: 22:00 01/10/2020



#include <stdio.h>
#include <stdlib.h>

/* run this program using the console pauser or add your own getch, system("pause") or input loop */
void showMenu();
int main(int argc, char *argv[]) {
	int count = 0, choose;
	int n, i, j, temp, *t;
	do {
		showMenu();
		scanf("%d", &choose);
		switch(choose) {
			case 1:				
				printf("\nNhap n = ");
				scanf("%d", &n);
				t = (int *) malloc (n * sizeof(int));
				for(i=0;i<n;i++) {
					printf("\nNhap t[%d]", i+1);
					scanf("%d", t+i);
					count = count + t[i];				
				}
				
				break;
			case 2:
				printf("Cac phan tu trong mang:");
				for(i=0;i<n;i++) {
					printf("%d, ", t[i]);
				}
				break;
			case 3:
				printf("\nTong cac phan tu: %d", count);
				break;
			case 4:
				for(i=0;i<n-1;i++) {
					for(j=i;j<n;j++) {
						if(t[i] > t[j]) {
						temp = t[i];
						t[i] = t[j];
						t[j] = temp;
						}
					
					}
				
				}
				printf("\nCac phan tu sau khi sap xep: ");
				for(i=0;i<n;i++) {
				printf("%d, ", t[i]);
				}
				break;
			case 5:
				printf("\nThoat");
				break;
			default:
				printf("\nNhap sai!!!");
		}
	
	} while(choose != 5);
	
	
	
	
	
	
	
	
	
	return 0;
}

void showMenu() {
	printf("\n1. Nhap vao N so nguyen");
	printf("\n2. Hien thi danh sach cac phan tu trong mang");
	printf("\n3. Tinh tong cac phan tu trong mang");
	printf("\n4. Sap xep tang dan");
	printf("\n5. Thoat");
	printf("\nChon choose: ");
	
}


Trần Thị Khánh Huyền [T2008A]

Ngày viết: 16:29 25/09/2020



#include <stdio.h>
#include <stdlib.h>

/* run this program using the console pauser or add your own getch, system("pause") or input loop */

int main(int argc, char *argv[]) {
	int N, i, j, tam, sum;
	int choose;
	int *t;
	do{
		printf("\n1. Nhap vao N so nguyen");
		printf("\n2. Hien thi danh sach cac phan tu trong mang");
		printf("\n3. Tinh tong cac phan tu trong mang");
		printf("\n4. Sap xep cac phan tu trong mang theo thu tu tang dan");
		printf("\nchon so: "); scanf("%d",&choose);
	switch(choose){
		case 1:
			printf("\nNhap vao so nguyen N:");
			scanf("%d",&N);
			t=(int*) malloc (N*sizeof(int));
				printf("\nNhap du lieu cac phan tu trong mang: ");
			for(i=0;i<N;i++){	
			printf("Nhap t[%d]",i);
			scanf("%d", t+i);
			}
			break;	
		case 2:
			for (i=0;i<N;i++){
			printf("\nt[%d] = %d ",i, t[i]);}
			break;
		case 3:
			sum = 0;
			for(i=0;i<N;i++){
				sum = sum + t[i];}
			printf("Tong cac phan tu trong mang la %d", sum);
			break;
		case 4:
			for(i=0;i<N;i++){
				if (t[i]>=t[i+1]){
				for(j=1;j<=N;j++){
					tam = t[i];
					t[i]=t[j];
					t[j]=tam;
				}
			
			}
			}
			printf("cac phan tu thu tu tang dan la:");
			for (i=0;i<N;i++){
				printf("%d", *(t+i));
			}
			break;
		case 5:
			printf("Thoat");
			break;
		default:
		printf("Nhap sai!!!");	
		break;		
			
	}
	}while(choose<=5);
	
	return 0;
}


Triệu Văn Lăng [T2008A]

Ngày viết: 13:34 23/09/2020



#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
/* run this program using the console pauser or add your own getch, system("pause") or input loop */

int main(int argc, char *argv[]) {
	int  n, i, tong, sx, a, j;
	int *t;
	while(3) {
		printf("\n========MENU========");
		printf("\nnhap 1 de nhap n so nguyen");
		printf("\nnhap 2 de hien thi danh sach cac phan tu trong mang");
		printf("\nnhap 3 de tinh tong cac phan tu trong mang");
		printf("\nnhap 4 de sawp xep cac phan tu theo thu tu tang dan");
		printf("\nnhap 5 de thoat");
		printf("\nmoi chon: "); scanf("%d",&a);
		
	switch(a) {
		case 1:
			printf("\n so phan tu : "); scanf("%d",&n);
			t=(int*) malloc (n*sizeof(int));
			for(i=0;i<n;i++){
				printf("\nnhap t[%d]= ",i);
				scanf("%d",t+i);
			}
			break;
		case 2:
		    for(i=0;i<n;i++) {
				printf("\ndanh sach cac phan tu trong mang la %d ",t[i]);
		     		}	
	        break;
		case 3:
		    tong=0;
			for(i=0;i<n;i++) {
				tong=tong+*(t+i);
				printf("\ntong la %d ",tong);
			}
		case 4:
			
		    for(i=0;i<n-1;i++){
	         	for(j=i+1;j<n;j++) {
		         	if(*(t+i)>*(t+j)) {
			        	sx=*(t+i);
			         	*(t+i)=*(t+j);
			        	*(t+j)=sx;
			}
		}
	}	
		    printf("\ndanh sach mang theo thu tu tang dan ") ;   	
			for(i=0;i<n;i++){
	        	printf("%d", *(t+i));
	}
		    break;
		case 5:
		     exit(0);
		 default: 
		    printf("\nnhap sai moi nhap lai");
		    break;     
	}
	}
	return 0;
}


Nguyễn Xuân Mai [T2008A]

Ngày viết: 20:56 22/09/2020



#include <stdio.h>
#include <stdlib.h>

/* run this program using the console pauser or add your own getch, system("pause") or input loop */

int main(int argc, char *argv[]) {
	int N,*t,i,a,tong=0,b,j;
	
	do{
		printf("\n1.Nhap vao so nguyen N \n2.Hien thi danh sach cac phan tu trong mang \n3.Tinh tong cac phan tu trong mang \n4.Sap xep cac phan tu trong mang theo thu tu tang dan \n5.Thoat");
		printf("\nChon Menu so:");
		scanf("%d",&a);
		
		switch(a){
			case 1:
				printf("\nNhap so nguyen N:");
				scanf("%d",&N);
				t = (int *) malloc (N * sizeof(int));
				for(i=0;i<N;i++){
					printf("\nNhap t[%d] = ", i);
					scanf("%d", t + i);
				}
				break;
			case 2:
				for(i=0;i<N;i++){
					printf("\nt[%d] = %d ",i, t[i]);
				}
				break;			
			case 3:
				for(i=0;i<N;i++){
					tong=tong+t[i];	
				}printf("\nTong cac phan tu = %d ",tong);
				break;
			case 4:
				for(i=0;i<=N-1;i++){
					for(j=i+1;j<N;j++){
						if(t[i]>t[j]){
							b = t[i];
							t[i] = t[j];		
							t[j] = b;
						}
					}
				}
				for(i=0;i<=N-1;i++){
					printf("%d ",t[i]);
				}
				break;	
			case 5:
				printf("Thoat");
				break;
			default:
				printf("Nhap lai");
				break;				
		}
	}while(a<=5);


	return 0;
}


Phân Loại Bài Viết

Danh Sách Bài Học

Đã sao chép!!!