Xem thêm

Bài tập C++ có giải (code mẫu) về biến, kiểu dữ liệu và toán tử

Huy Erick
Chương trình C++ rất phổ biến trong thế giới lập trình. Nếu bạn đang học viết chương trình C++, thì mời bạn tham khảo những bài luyện tập dưới đây. Bài tập C++ về biến...

Chương trình c+ + rất phổ biến trong thế giới lập trình . Nếu bạn đang học viết chương trình C++, thì mời bạn tham khảo những bài luyện tập dưới đây.

Bài tập C++ về biến và kiểu dữ liệu

Viết một chương trình yêu cầu người dùng nhập chiều rộng và cao của hình chữ nhật, sau đó xuất kết quả diện tích và chu vi của hình chữ nhật đó.

Code mẫu 1:

#include  #include  #include  using namespace std;  int main() {     string swap;     Clrscr();     cout << "Nhập chiều rộng của hình chữ nhật: ";     double width;     cin >> swap;     while (!(stringstream(swap) >> width)) {         cout << "Lỗi! Loại không phù hợp! Vui lòng nhập lại: ";         cin >> swap;     }     cout << "Nhập chiều cao của hình chữ nhật: ";     double height;     cin >> swap;     while (!(stringstream(swap) >> height)) {         cout << "Lỗi! Loại không phù hợp! Vui lòng nhập lại: ";         cin >> swap;     }     cout << "Diện tích của hình chữ nhật là " << height * width << endl;     cout << "Chu vi của hình chữ nhật là " << 2 * (height + width) << endl;     return 0; } 

Code mẫu 2:

// By Fate-X #include  using std::cout; using std::cin;  int main(){     double width, height, area, perimeter;     cout << "Chương trình tính diện tích và chu vi hình chữ nhật\n";     cout << "Nhập chiều rộng: ";     cin >> width;     cin.ignore();     cout << "Nhập chiều cao: ";     cin >> height;     cin.ignore();     area = height * width;     perimeter = 2 * (width + height);     cout << "\nDiện tích: " << area << "\n";     cout << "Chu vi: " << perimeter << "\n";     cout << "Nhấn phím Enter để thoát chương trình.";     cin.get();     return 0; } 

Viết một chương trình trong C++ để tìm kích thước của các kiểu dữ liệu cơ bản sau:

sizeof(char) : 1 byte sizeof(short) : 2 byte sizeof(int) : 4 byte sizeof(long) : 8 byte sizeof(long long): 8 byte sizeof(float): 4 byte sizeof(double): 8 byte sizeof(long double) : 16 byte sizeof(bool) : 1 byte

Code mẫu:

#include  using namespace std;  int main() {     cout << "\nTìm kích thước của các kiểu dữ liệu cơ bản :\n";     cout << "-\n";     cout << "Kích thước của kiểu dữ liệu char là: " << sizeof(char) << " byte\n";     cout << "Kích thước của kiểu dữ liệu short là: " << sizeof(short) << " byte\n";     cout << "Kích thước của kiểu dữ liệu int là: " << sizeof(int) << " byte\n";     cout << "Kích thước của kiểu dữ liệu long là: " << sizeof(long) << " byte\n";     cout << "Kích thước của kiểu dữ liệu long long là: " << sizeof(long long) << " byte\n";     cout << "Kích thước của kiểu dữ liệu float là: " << sizeof(float) << " byte\n";     cout << "Kích thước của kiểu dữ liệu double là: " << sizeof(double) << " byte\n";     cout << "Kích thước của kiểu dữ liệu long double là: " << sizeof(long double) << " byte\n";     cout << "Kích thước của kiểu dữ liệu bool là: " << sizeof(bool) << " byte\n\n";     return 0; } 

Viết một chương trình C++ để in nội dung chào mừng trong một dòng riêng.

Code mẫu:

#include  using namespace std;  int main() {     cout << "\nIn một dòng chào mừng:\n";     cout << "-\n";     cout << "Chào mừng bạn đến với w3resource.com\n"; } 

Viết chương trình C++ để in các dòng text đã cho trước

Bài tập: Viết chương trình C++ để in các dòng sau:

Tôi năm nay 18 tuổi. Tôi có nhiều hoài bão muốn theo đuổi.

Code mẫu:

#include  #include  using namespace std;  int main(int argc, char *argv[]) {     int age;     age = 18;     cout << "Tôi năm nay " << age << " tuổi.\n";     cout << "Tôi có nhiều hoài bão muốn theo đuổi.\n";     return 0; } 

Viết chương trình C++ để in các dấu sao theo yêu cầu đã cho.

Yêu cầu: Viết chương trình C++ để in các dấu sao theo dạng sau:

* ** *** **** ***** ******

Code mẫu:

#include  #include  using namespace std;  int main(int argc, char *argv[]) {     cout << "*\n";     cout << "**\n";     cout << "***\n";     cout << "****\n";     cout << "*****\n";     cout << "******\n";     return 0; } 

Viết chương trình C++ để khai báo 2 biến nguyên và một biến thực, sau đó in kết quả trên màn hình.

Yêu cầu: Viết chương trình C++ để khai báo hai biến nguyên, một biến thực và gán các giá trị tương ứng 8, 16 và 15.8 cho chúng. Sau đó in kết quả trên màn hình.

Code mẫu:

#include  #include  using namespace std;  int main(int argc, char *argv[]) {     int a;     int b;     float c;     a = 8;     b = 16;     c = 15.8;     cout << "a = " << a << "\t";     cout << "b = " << b << "\t";     cout << "c = " << c << endl;     return 0; } 

Viết chương trình C++ yêu cầu người dùng nhập tên của họ, rồi in kết quả trên màn hình.

Yêu cầu: Viết chương trình C++ để nhắc người dùng nhập tên của họ, sau đó in kết quả trên màn hình.

Code mẫu:

#include  #include  using namespace std;  int main(int argc, char *argv[]) {     char name[20];     cout << "Hãy nhập tên của bạn: ";     cin >> name;     cout << "Xin chào " << name << "! \n";     return 0; } 

Viết chương trình C++ để nhập ba số nguyên đã biết, sau đó in ra màn hình theo thứ tự tăng dần và giảm dần.

Yêu cầu: Viết chương trình C++ yêu cầu người dùng nhập ba số nguyên, sau đó in 3 số đó ra màn hình theo thứ tự tăng dần.

Code mẫu:

#include  void Sort(int &a, int &b, int &c){     if(a > b){         int tmp = a;         a = b;         b = tmp;     }     if(a > c){         int tmp = a;         a = c;         c = tmp;     }     if(b > c){         int tmp = b;         b = c;         c = tmp;     }     return; } int main(){     std::cout << "Nhập 3 số nguyên: \n";     int num1;     int num2;     int num3;     std::cin >> num1 >> num2 >> num3;     int output1 = num1;     int output2 = num2;     int output3 = num3;     Sort(output1,output2,output3);     std::cout << num1 << " " << num2 << " " << num3 << " " << " khi sắp xếp tăng dần: ";     std::cout << output1 << " " << output2 << " " << output3 << std::endl;     return 0; }

Viết chương trình C++ để in một số nguyên, một số thực, một ký tự đã được định nghĩa trước.

Yêu cầu: In các giá trị sau trên màn hình chuẩn: Một số nguyên a, một số thực b và một ký tự c.

Code mẫu:

#include  #include  using namespace std;  int main() {     int a = 100;     float b = 5.1;     char c = 'q';     cout << "\n";     cout << "a = " << a << endl;     cout << "b = " << b << endl;     cout << "c = " << c << endl;     return 0; } 

Bài tập C++ về toán tử

Viết một chương trình trong C++ để in tổng của hai số.

Code mẫu:

#include  using namespace std;  int main() {     cout << "\nIn tổng của hai số :\n";     cout << "-\n";     cout << "Tổng của 29 và 30 là : " << 29 + 30 << "\n"; } 

Tìm tổng, hiệu, tích và thương của hai số nguyên và in kết quả ra màn hình.

Yêu cầu: Giả sử có 2 số nguyên cho trước, bạn hãy tính tổng, hiệu, tích và thương của hai số rồi in kết quả ra màn hình.

Code mẫu:

#include  #include  using namespace std;  int main() {     int x = 12;     int y = 5;     int tong, hieu, tich, thuong;     tong = x + y;     hieu = x - y;     tich = x * y;     thuong = x / y;     cout << "Tổng của " << x << " và " << y << " là " << tong << "." << endl;     cout << "Hiệu của " << x << " và " << y << " là " << hieu << "." << endl;     cout << "Tích của " << x << " và " << y << " là " << tich << "." << endl;     cout << "Thương của " << x << " và " << y << " là " << thuong << "." << endl;     return 0; } 

Nhập hai số nguyên từ bàn phím, tính tổng, trung bình cộng của chúng và in ra màn hình.

Yêu cầu: Nhập 2 số nguyên từ bàn phím, tính tổng, trung bình cộng của hai số đó, rồi in kết quả ra màn hình.

Code mẫu:

#include  #include  using namespace std;  int main(int argc, char *argv[]) {     float x, y, tong, trungbinhcong;     cout << "Nhập hai số nguyên: ";     cin >> x >> y;     tong = x + y;     trungbinhcong = tong / 2.0f;     cout << "Tổng của " << x << " và " << y << " là " << tong << "." << endl;     cout << "Trung bình cộng của " << x << " và " << y << " là " << trungbinhcong << "." << endl;     return 0; } 

Tìm vận tốc cuối cùng và in kết quả ra màn hình khi biết vận tốc ban đầu, gia tốc và thời gian.

Yêu cầu: Giả sử một chiếc ô tô có vận tốc ban đầu v0, gia tốc a và thời gian t. Viết chương trình C++ để tìm vận tốc cuối cùng của ô tô và in kết quả ra màn hình.

Gợi ý: Sử dụng lệnh cin để nhập các giá trị tương ứng cho v0, a và t. Dùng công thức v = v0 + a.t để tính vận tốc cuối cùng.

Code mẫu:

#include  #include  using namespace std;  int main() {     int v, u, a, t;     cout << "Nhập vận tốc ban đầu, gia tốc, thời gian: ";     cin >> u >> a >> t;     v = u + a * t;     cout << "Vận tốc cuối cùng là " << v << "." << endl;     return 0; } 

Viết chương trình C++ để tính các giá trị biểu thức và in kết quả theo yêu cầu.

Yêu cầu: Viết chương trình C++ để in kết quả dưới dạng sau:

Giá trị x    Giá trị y    Biểu Thức    Kết quả     18          |2         |A=y+3         |A=5     18          |2         |B=y-2         |B=0     18          |2         |C=y*5         |C=10     18          |2         |D=x/y         |D=9     18          |2         |E=x%y         |E=0

Code mẫu:

#include  #include  #include  using namespace std;  int main(int argc, char *argv[]) {     float x, y, A, B, C, D, E;     x = 18;     y = 2;     A = y + 3;     B = y - 2;     C = y * 5;     D = x / y;     E = x % y;     cout << "Giá trị x\tGiá trị y\tBiểu thức\tKết quả\n";     cout << fixed << setprecision(0);     cout << x << "\t\t|" << y << "\t\t|A=y+3\t\t|A=" << A << endl;     cout << x << "\t\t|" << y << "\t\t|B=y-2\t\t|B=" << B << endl;     cout << x << "\t\t|" << y << "\t\t|C=y*5\t\t|C=" << C << endl;     cout << fixed << setprecision(2);     cout << x << "\t\t|" << y << "\t\t|D=x/y\t\t|D=" << D << endl;     cout << x << "\t\t|" << y << "\t\t|E=x%y\t\t|E=" << E << endl;     return 0; } 

Viết chương trình C++ để nhập điểm kiểm tra, điểm thi giữa kỳ, điểm thi cuối kỳ, sau đó tính tổng điểm và in kết quả ra màn hình.

Yêu cầu: Viết chương trình để nhập điểm kiểm tra, điểm thi giữa kỳ, điểm thi cuối kỳ, sau đó tính tổng điểm và in kết quả ra màn hình dưới dạng sau:

Code mẫu:

#include  #include  #include  using namespace std;  int main(int argc, char *argv[]) {     float q1, q2, q3, tongdiemkt, diemgk, diemck, tongdiem;     cout << "==========Điểm kiểm tra================\n";     cout << "Nhập điểm kiểm tra 1: ";     cin >> q1;     cout << "\n";     cout << "Nhập điểm kiểm tra 2: ";     cin >> q2;     cout << "\n";     cout << "Nhập điểm kiểm tra 3: ";     cin >> q3;     cout << "\n";     cout << "==========Điểm thi giữa kỳ=============\n";     cout << "Nhập điểm thi giữa kỳ: ";     cin >> diemgk;     cout << "\n";     cout << "===========Điểm thi cuối kỳ=============\n";     cout << "Nhập điểm thi cuối kỳ: ";     cin >> diemck;     cout << "\n";     tongdiemkt = q1 + q2 + q3;     tongdiem = tongdiemkt + diemgk + diemck;     cout << "Tổng điểm kiểm tra: " << setw(5) << right << tongdiemkt << "\n";     cout << "Điểm thi giữa kỳ: " << setw(7) << right << diemgk << "\n";     cout << "Điểm thi cuối kỳ: " << setw(10) << right << diemck << "\n";     cout << ".................................\n";     cout << "Tổng điểm: " << setw(11) << right << tongdiem << "\n";     return 0; } 

Nhập 2 số nguyên x, y và tính theo yêu cầu

Yêu cầu: Viết chương trình C++ để nhập hai số nguyên x, y, sau đó tính: p=xy, s=x+y, q=s^2+p(s-x)(p+y) và in kết quả ra màn hình.

Code mẫu:

#include  #include  #include  using namespace std;  int main(int argc, char *argv[]) {     float x, y, p, s, q;     cout << "Nhập giá trị x: ";     cin >> x;     cout << "\n";     cout << "Nhập giá trị y: ";     cin >> y;     cout << "\n";     p = x * y;     s = x + y;     q = s * s + p * (s - x) * (p + y);     cout << "Giá trị biểu thức q là: " << q << "\n";     return 0; } 

Bài tập C++ vận dụng nạp chồng toán tử nhị phân để cộng, trừ hai số phức

Yêu cầu: Sử dụng khái niệm nạp chồng toán tử để cộng và trừ hai số phức.

Gợi ý: Để sử dụng nạp chồng toán tử trong giải bài tập cộng, trừ số phức này, bạn cần làm những việc sau:

  • Khai báo lớp sophuc: Bao gồm các biến và hàm thành viên.
  • Dùng hàm getvalue() để nhận phần thực, phần ảo của số phức.
  • Định nghĩa hàm operator+() để cộng hai số phức.
  • Định nghĩa hàm operator-() để trừ hai số phức.
  • Định nghĩa hàm display().
  • Khai báo các số phức i1, i2 và kết quả phép tính kq1, kq2.
  • Gọi hàm getvalue để lấy phần thực và phần ảo cho i1, i2.
  • Gọi hàm operator+()operator-() để cộng, trừ hai số phức.
  • Gọi hàm display để hiển thị 2 số phức, 2 kết quả cộng, trừ.
  • Trả về các giá trị.

Code mẫu:

#include  #include  using namespace std;  class sophuc {     int a, b;  public:     void getvalue() {         cout << "Hãy nhập phần thực, phần ảo: ";         cin >> a >> b;     }     sophuc operator+(sophuc i) {         sophuc q;         q.a = a + i.a;         q.b = b + i.b;         return (q);     }     sophuc operator-(sophuc i) {         sophuc q;         q.a = a - i.a;         q.b = b - i.b;         return (q);     }     void display() { cout << a << "+" << b << "i\n"; } };  int main() {     sophuc i1, i2, kq1, kq2;     i1.getvalue();     i2.getvalue();     kq1 = i1 + i2;     kq2 = i1 - i2;     cout << "Số phức đã nhập vào:\n";     i1.display();     i2.display();     cout << "Kết quả cộng, trừ số phức:\n";     kq1.display();     kq2.display();     return 0; } 
1