Sắp xếp và xử lý chuỗi ký tự trong C
Bài 1: Sắp xếp ký tự tại vị trí lẻ theo thứ tự giảm dần
Yêu cầu: Viết hàm void sapXepViTriLe(char mang[]) để sắp xếp các ký tự ở chỉ số lẻ (1, 3, 5...) theo giá trị ASCII giảm dần.
Ví dụ: Chuỗi "abcdefgh" → "ahcfedgb"
#include <stdio.h>
#include <string.h>
void sapXepViTriLe(char mang[])
{
int doDai, m, n;
char tam;
do ...
Đăng vào ngày 11 tháng 8 lúc 09:21
Kỹ Thuật Khai Thác Lỗ Hổng Chuỗi Định Dạng Trong C/C++
Khái Niệm Về Chuỗi Định Dạng
Trong các hàm API xuất dữ liệu của C/C++ như printf(), chuỗi định dạng (format string) đóng vai trò xác định cách thức và vị trí của các tham số cần in ra. Các ký tự đặc biệt bắt đầu bằng % được gọi là đặc tả chuyển đổi, dùng để ánh xạ các đối số tiếp theo thành định dạng tương ứng. Các ký tự thông thường khác sẽ đư ...
Đăng vào ngày 7 tháng 8 lúc 04:14
Xử Lý Tệp Và Dữ Liệu Cấu Trúc Trong Ngôn Ngữ C
Thống Kê Tệp Văn Bản
Chương trình sau đây đọc một tệp văn bản và tính toán số lượng dòng cùng với tổng số ký tự hợp lệ, không bao gồm các khoảng trắng và ký tự tab.
Hiển thị mã nguồn
#include <stdio.h>
int main() {
FILE *tai_lieu;
char ky_tu;
int so_dong = 0;
int dem_ky_tu = 0;
tai_lieu = fopen("du_lieu.txt", "r");
...
Đăng vào ngày 31 tháng 7 lúc 10:06
Lập trình C cơ bản: Xử lý nhập xuất và logic điều kiện
Xử lý hiển thị ký tự cơ bản
Để bắt đầu với ngôn ngữ C, chúng ta thường làm quen với hàm printf để xuất dữ liệu ra màn hình. Dưới đây là ví dụ về việc sử dụng các ký tự đơn giản để tạo hình khối cơ bản:
#include <stdio.h>
int main() {
printf(" O \n");
printf(" <H> \n");
printf(" I I \n");
return 0;
}
Kiểm tra điều ...
Đăng vào ngày 25 tháng 7 lúc 02:48
Phân Vùng Bộ Nhớ Trong Chương Trình C/C++ Và Cách Thức Hoạt Động Chi Tiết
Khi một chương trình C/C++ được biên dịch và chạy, bộ nhớ của nó được tổ chức thành nhiều vùng khác nhau. Mỗi vùng có mục đích, cách quản lý và vòng đời riêng. Hiểu rõ các vùng này là nền tảng quan trọng để viết mã an toàn, hiệu quả và tránh các lỗi như tràn bộ nhớ hay rò rỉ bộ nhớ. Bài viết này sẽ phân tích chi tiết từng vùng bộ nhớ, cách chún ...
Đăng vào ngày 23 tháng 7 lúc 11:19
Xử lý Mảng và Chuỗi bằng C
Tìm giá trị lớn nhất và nhỏ nhất trong mảng
#include <stdio.h>
#define KICH_THUOC 5
void nhapDuLieu(int mang[], int n);
void xuatDuLieu(int mang[], int n);
void timMinMax(int mang[], int n, int* pmin, int* pmax);
int main() {
int a[KICH_THUOC];
int min, max;
printf("Nhập %d số nguyên:\n", KICH_THUOC);
nhapDu ...
Đăng vào ngày 22 tháng 7 lúc 15:58
Tìm hiểu Mảng và Chuỗi trong Lập trình C
Khảo sát Cấu trúc Mảng
Phần này tập trung vào việc khám phá cách các mảng, cả một chiều và hai chiều, được lưu trữ trong bộ nhớ và cách truy cập các phần tử của chúng trong ngôn ngữ C.
Mảng một chiều
Trong C, các phần tử của mảng một chiều được lưu trữ liên tục trong bộ nhớ. Ví dụ sau minh họa cách mảng số nguyên (int) và mảng ký tự (char) đư ...
Đăng vào ngày 20 tháng 7 lúc 19:21
Xử lý sự cố tương thích GDB đa phiên bản trong gdbgui
Giới thiệu
gdbgui là một giao diện người dùng web mạnh mẽ cho GDB (GNU Debugger), hỗ trợ việc gỡ lỗi các ứng dụng viết bằng C, C++, Go, Rust và Fortran. Tuy nhiên, việc sử dụng các phiên bản GDB khác nhau có thể gây ra các vấn đề về khả năng tương thích, ảnh hưởng đến trải nghiệm gỡ lỗi. Bài viết này sẽ hướng dẫn các phương pháp thực tiễn để qu ...
Đăng vào ngày 17 tháng 7 lúc 16:03
10 kỹ thuật nâng cao với mini-rv32ima: Từ sử dụng cơ bản đến tùy chỉnh sâu
mini-rv32ima là một trình mô phỏng RISC-V nhẹ, được thiết kế theo kiểu tệp tiêu đề duy nhất và tuân thủ quy tắc thư viện STB. Bài viết này sẽ chia sẻ 10 kỹ thuật hữu ích, giúp bạn nhanh chóng nắm bắt cách sử dụng và tùy chỉnh sâu để tận dụng tối đa công cụ mô phỏng nhỏ gọn này.
1. Bắt đầu nhanh: Cài đặt môi trường trong 5 phút
Để bắt đầu sử dụn ...
Đăng vào ngày 14 tháng 7 lúc 15:00
Bài tập Lập trình C: Giải các bài toán LeetCode và Luogu
Chuẩn bị cho kỳ thi kiểm tra năng lực lập trình, tôi đã bắt đầu giải các bài tập thuật toán. Ban đầu tôi không mấy hứng thú, nhưng sau khi giải được một vài bài, cảm giác đạt được thành quả rất tuyệt vời. Hôm nay tôi khá mệt nên chỉ làm một vài bài và kết thúc công việc sớm. Những ngày trước đó, tôi đã thức khuya để chuẩn bị đề cho các buổi họp ...
Đăng vào ngày 14 tháng 7 lúc 03:09