Bài tập C++ có giải (code mẫu) về biến, kiểu dữ liệu và toán tử
Chương trình C++ rất phổ biến trong thế giới lập trình. Nếu đ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 <iostream>
#include <sstream>
#include <conio.h>
using namespace std;
int main()
{
string swap;
Clrscr();
cout << "Input the width of the rectangle: ";
double width;
cin >> swap;
while ( !(stringstream(swap) >> width) )
{
cout << "Error! Type mismatch! \nInput again: ";
cin >> swap;
}
cout << "Input the height of the regtangle: ";
double height;
cin >> swap;
while ( !(stringstream(swap) >> height) )
{
cout << "Error! Type mismatch! \nInput again: ";
cin >> swap;
}
cout << "The area of the rectangle is " << height * width << endl;
cout << "The perimiter of the rectangle is " << 2 * (height + width) << endl;
return 0;
}
Code mẫu 2:
//By Fate-X
#include<iostream>
using std::cout;
using std::cin;
int main(){
double width, height, area, perimeter;
cout << "This program takes the height and width (when given) of a rectangle and returns\nits area and perimeter.\n\n";
cout << "Input Width: ";
cin >> width;
cin.ignore();
cout << "Input height: ";
cin >> height;
cin.ignore();
area = height * width;
perimeter = 2 * (width + height);
cout << "\n\nArea: " << area << "\n";
cout << "Perimeter: " << perimeter << "\n\n";
cout << "Please press the 'return' key to exit the program.";
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 <iostream>
using namespace std;
int main()
{
cout << "\n\n Find Size of fundamental data types :\n";
cout << "------------------------------------------\n";
cout << " The sizeof(char) is : " << sizeof(char) << " bytes \n" ;
cout << " The sizeof(short) is : " << sizeof(short) << " bytes \n" ;
cout << " The sizeof(int) is : " << sizeof(int) << " bytes \n" ;
cout << " The sizeof(long) is : " << sizeof(long) << " bytes \n" ;
cout << " The sizeof(long long) is : " << sizeof(long long) << " bytes \n";
cout << " The sizeof(float) is : " << sizeof(float) << " bytes \n" ;
cout << " The sizeof(double) is : " << sizeof(double) << " bytes \n";
cout << " The sizeof(long double) is : " << sizeof(long double) << " bytes \n";
cout << " The sizeof(bool) is : " << sizeof(bool) << " bytes \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 <iostream>
using namespace std;
int main()
{
cout << "\n\n Print a welcome text in a separate line :\n";
cout << "----------------------------------------------\n";
cout << " Welcome to \n" ;
cout << " w3resource.com "<<endl ;
}
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:
Toi nam nay 18 tuoi.
Toi co nhieu hoai bao muon theo duoi.
Code mẫu:
#include <cstdlib>
#include <iostream>
using namespace std;
int main(int argc, char *argv[])
{
int age;
age=10;
cout<<" Toi nam nay "<<age<<" tuoi.\n";
cout<<" Toi co nhieu hoai bao muon theo duoi.\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 <cstdlib>
#include <iostream>
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 <cstdlib>
#include <iostream>
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"<<"b="<<b<<"\t"<<"c="<<c;
cout<<"\n";
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 <cstdlib>
#include <iostream>
using namespace std;
int main(int argc, char *argv[])
{
char name[20];
cout<<"Hay nhap ten cua ban:";
cin>>name;
cout<<"Xin chao "<<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 <iostream>
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 << "Nhap 3 so nguyen: " << std::endl;
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 sap xep tang dan: ";
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 <iostream>
#include <conio.h>
using namespace std;
int main()
{
int a = 100;
float b = 5.1;
char c = 'q';
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 <iostream>
using namespace std;
int main()
{
cout << "\n\n In tổng của hai số :\n";
cout << "-----------------------------------\n";
cout << " Tổng của 29 và 30 là : "<< 29+30 <<"\n\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 <iostream>
#include <conio.h>
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 << "Tong cua " << x << " va " << y << " la " << tong << "." << endl;
cout << "Hieu cua " << x << " va " << y << " la " << hieu << "." << endl;
cout << "Tich cua " << x << " va " << y << " la " << tich << "." << endl;
cout << "Thuong cua " << x << " va " << y << " la " << 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 <iostream>
#include <conio.h>
using namespace std;
int main()
{
int x,y,tong;
float trungbinhcong;
cout << "Nhap hai so nguyen : " << endl;
cin>>x>>y;
tong=x+y;
trungbinhcong=tong/2.0f;
cout << "Tong cua " << x << " va " << y << " la " << tong << "." << endl;
cout << "Trung binh cong cua " << x << " va " << y << " la " << trungbinhcong << "." << endl;
return 0;
}
Kết quả:
Nhap hai so nguyen:
3
5
Tong cua 3 va 5 la 8.
Trung binh cong cua 3 va 5 la 4.
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 <iostream>
#include <conio.h>
using namespace std;
int main()
{
int v,u,a,t;
cout << "Nhap van toc v0, gia toc a, thoi gian t: " << endl;
cin>>u>>a>>t;
v=u+a*t;
cout << "Van toc cuoi cung la " << v << "." << endl;
return 0;
}
Kết quả:
Nhap van toc v0, gia toc a, thoi gian t:
10 2 15
Van toc cuoi cung la 40.
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:
Gtri x | Gtri y | Bieu Thuc | Ket qua |
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 |
Gợi ý:
- Dùng tab và newline để có thể in theo yêu cầu.
Code mẫu:
#include <cstdlib>
#include <iostream>
using namespace std;
int main(int argc, char *argv[])
{
int x;
int y;
x=18;
y=2;
cout<<"Ket qua tra ve:\n";
cout<<"Gtri x\t"<<"Gtri y\t"<<"Bieu thuc\t"<<"Ket qua\n";
cout<<x<<" |\t"<<y<<" |\t"<<"A=y+3\t"<<"\t|"<<"A="<<y+3<<"\n";
cout<<x<<" |\t"<<y<<" |\t"<<"B=y-2\t"<<"\t|"<<"B="<<y-2<<"\n";
cout<<x<<" |\t"<<y<<" |\t"<<"C=y*5\t"<<"\t|"<<"C="<<y*5<<"\n";
cout<<x<<" |\t"<<y<<" |\t"<<"D=x/y\t"<<"\t|"<<"D="<<(float)(x/y)<<"\n";
cout<<x<<" |\t"<<y<<" |\t"<<"E=x%y\t"<<"\t|"<<"E="<<x%y<<"\n";
return 0;
}
Kết quả:
Viết chương trình C++ để tính điểm thi.
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 <cstdlib>
#include <iostream>
#include<iomanip>
using namespace std;
int main(int argc, char *argv[])
{
float q1;
float q2;
float q3;
float tongdiemkt;
float diemgk;
float diemck;
float tongdiem;
cout<<"==========Diem kiem tra================\n";
cout<<"Nhap diem kiem tra 1:";
cin>>q1;
cout<<"\n";
cout<<"Nhap diem kiem tra 2:";
cin>>q2;
cout<<"\n";
cout<<"Nhap diem kiem tra 3:";
cin>>q3;
cout<<"\n";
cout<<"==========Diem thi giua ky=============\n";
cout<<"Nhap diem thi giua ky:";
cin>>diemgk;
cout<<"\n";
cout<<"===========Diem thi cuoi ky=============\n";
cout<<"Nhap diem thi cuoi ky:";
cin>>diemck;
cout<<"\n";
tongdiemkt=q1+q2+q3;
tongdiem=tongdiemkt+diemgk+diemck;
cout<<"Tong diem kiem tra:"<<right<<setw(5)<<tongdiemkt;
cout<<"\n";
cout<<"Diem thi giua ky:"<<right<<setw(7)<<diemgk;
cout<<"\n";
cout<<"Diem thi cuoi ky:"<<right<<setw(10)<<diemck;
cout<<"\n";
cout<<".................................\n";
cout<<"Tong diem:"<<right<<setw(11)<<tongdiem;
cout<<"\n";
return 0;
}
Kết quả:
Nhập 2 số 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=x*y, s=x+y, q=s2+p(s-x)*(p+y) và in kết quả ra màn hình.
Code mẫu:
#include <cstdlib>
#include <iostream>
#include<iomanip>
using namespace std;
int main(int argc, char *argv[])
{
float x;
float y;
float p;
float s;
float q;
cout<<"Nhap gia tri x: ";
cin>>x;
cout<<"\n";
cout<<"Nhap gia tri y: ";
cin>>y;
cout<<"\n";
p=x*y;
s=x+y;
q=s*s+p*(s-x)*(p+y);
cout<<"Gia tri bieu thuc q la: "<<q;
cout<<"\n";
return 0;
}
Kết quả:
Nhap gia tri x: 5
Nhap gia tri y: 10
Gia tri bieu thuc q la: 30225
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+() và 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<iostream>
#include<conio.h>
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;
}
Kết quả:
Bạn nên đọc
- Hà ĐứcThích · Phản hồi · 1 · 27/09/23
- Việt Hùng NguyễnThích · Phản hồi · 0 · 21/07/23
- Gia Thịnh BùiThích · Phản hồi · 0 · 12/11/22
- Việt Hùng NguyễnThích · Phản hồi · 0 · 21/07/23
-
Cũ vẫn chất
-
Cách cộng dặm Bông sen vàng
Hôm qua -
Khắc phục lỗi mạng WiFi không hiển thị trên Windows 10
Hôm qua -
Cách ẩn tin nhắn Telegram không cần xóa
Hôm qua -
Cách vô hiệu hóa BitLocker trong Windows 10
Hôm qua -
200+biệt danh cho người yêu hay và hài hước
Hôm qua 5 -
Trải nghiệm Nothing Phone 1
Hôm qua 2 -
Cách giữ định dạng Word khi chia sẻ tài liệu
Hôm qua -
Cách khởi động và dừng các dịch vụ trong MS SQL Server
Hôm qua -
Black Friday là gì? Black Friday 2023 vào ngày nào?
Hôm qua -
Pantheon DTCL 7.5: Lên đồ, đội hình mạnh
Hôm qua