Dưới đây là những bài tập C + + hay có giải thuật cơ bản, những bạn hoàn toàn có thể tải thêm nhiều bài tập C + + hay cơ bản, nâng cao tại đường dẫn cuối bài .
Tóm Tắt
Bài tập C++ Hàm
1. Tìm ước chung lớn nhất của 2 số a, b
#include "iostream"
using namespace std;
int ucln(int, int);
int ucln(int x, int y){
if (x < y){
x = x + y;
y = x - y;
x = x - y;
}
while (y != 0){
int m = x%y;
x = y;
y = m;
}
return x;
}
int main()
{
int a, b;
cin >> a >> b;
cout << ucln(a, b);
return 0;
}
2. Viết chương trình có dùng hàm kiểm tra năm nhuận
#include
#include
int isLeapYear(int y)
{ return y % 4 == 0 && (y % 100 != 0 || y % 400 == 0);
}
void main()
{
int n;
do
{
cin >> n;
if (isLeapYear(n)) cout << n << " la nam nhuan.\n"; else cout << n << " Khong phai nam nhuan.\n";
}
while (n>1);
}
Bài tập C++ Câu lệnh điều khiển
Nhập vào 1 số nguyên, yêu cầu xuất ra chữ số hàng trăm của số đó, nếu không có thì xuất ra 0
Bạn đang đọc: Bài tập C++ hay có lời giải
VD :
Input |
Output |
1234 | 2 |
#include
using namespace std;
int main()
{
int n, i;
cin >> n;
i = 0;
if (n < 100) {
cout << i << endl;
}
else {
i = n / 100 % 10;
cout << i << endl;
}
return 0;
}
Bài tập C++ Chuỗi ký tự
1. Viết chương trình bỏ ký tự a trong một chuỗi
#include #include #include void main()
{
int i,j; char x[80];
cout<<"\nnhap mot chuoi : "; gets(x);
for (i=j=0;x[i]!=NULL;i++) if (x[i]!='a')
{
x[j]=x[i]; j++;
}
x[j]= NULL;
cout<<"\nChuoi ky tu sau khi bo ky tu a la :"; puts(x);
getch();
}
2. Viết chương trình trích chuỗi con bên trái của một chuỗi
#include #include
#include void main()
{
clrscr();
char ten[25], *tentro; tentro=ten;
int i,sokytu;
cout<<"\n nhap mot chuoi ky tu : "; gets(ten);
cout<<"\nban muon trich bao nhieu ky tu :"; cin>>sokytu;
for (i=0;i
getch();
}
Bài tập C++ Mảng và con trỏ
1. Tìm số nhỏ nhất và lớn nhất trong mảng
#include "iostream"
using namespace std;
int main()
{
int a[100];
int n = 0;
int x;
while (cin >> x) {
a[n] = x;
n++;
}
int maxval = a[0], minval = a[0];
for (int i = 1; i < n; i++) {
if (maxval < a[i])
maxval = a[i];
if (minval > a[i])
minval = a[i];
}
cout << minval << endl;
cout << maxval << endl;
return 0;
}
2. Viết chương trình nhập một mảng thực cấp không quá 20x20 và tìm giá trị lớn nhất trong các phần tử của mảng
#include #includen void main()
{
float a[20][20],smax; int m,n,i,j,imax,jmax; clrscr();
puts(" Cho biet so hang va so cot cua ma tran: "); scanf("%d%d",&m,&n);
for (i=0;i
Bài tập C++ Nhập xuất dữ liệu
1. Nhập vào 1 ký tự, yêu cầu ra mã ASCII của ký tự đó
VD :
Input |
Output |
A | 65 |
#include
using namespace std;
int main()
{
char m;
cin >> m;
cout << int(m);
return 0;
}
2. Nhập vào 1 số gồm 2 chữ số, yêu cầu xuất ra tổng chữ số của nó ra màn hình
VD :
Input |
Output |
23 | 5 |
#include
using namespace std;
int main()
{
int a;
cin >> a;
cout << a%10 + a/10;
return 0;
}
Bài tập C++ Vòng lặp
1. Nhập 1 số nguyên n, xuất tổng các số lẻ từ 1 đến n
VD :
Input |
Output |
3 | 4 |
#include
using namespace std;
int main()
{
int n, s = 0;
cin>>n;
for(int i=1; i<=n; i=i+2)
{
s = s+i;
}
cout << s;
return 0;
}
2. Nhập vào 1 số nguyên n, xuất ra n!
VD :
Input |
Output |
3 |
6 |
#include
using namespace std;
int main()
{
int n, giaithua = 1;
cin >> n;
for (int i = 1; i <= n; i++) {
giaithua = giaithua*i;
}
cout << giaithua << endl;
return 0;
}
Bài tập C++ Kiểu tập tin
Viết chương trình triển khai những nhu yếu :
- Nhập 10 số thực vào một file văn bản có tên là INPUT.
- Đọc nội dung file INPUT.
- Tính tổng bình phương các số có trong file INPUT.
#include #include #include
void write()
{FILE *f = fopen("input","wt");
/*Ghi vao file van ban 10 so thuc */
for (int i=1; i<=10;i++)
{ float a;
printf("\n Nhap so thu %d: ",i); scanf("%f", &a);
fprintf(f,"%f ",a);
}
fclose(f);
}
void read()
{ int i;float a;
FILE *f = fopen("input","rt"); printf("\n Noi dung tap tin la : \n\n"); do
{ fscanf(f,"%f",&a);
if (!feof(f))
printf("%.2f ",a);
} while (!feof(f)); fclose(f);
}
float tongbp()
{ int i;float tong = 0;
FILE *f = fopen("input","rt"); do
{ float a; fscanf(f,"%f",&a);
if (!feof(f)) tong+=a*a;
}while (!feof(f)); fclose(f);
return tong;
}
void main()
{ clrscr();
write();
read();
printf("\n Tong binh phuong la %.2f \n ",tongbp()); getch();
}
Các bạn có thể tải nhiều bài tập C++ hay có lời giải tại đây.
bai-tap-c-hay-co-loi-giai.rar
Như vậy trên đây bài viết đã tổng hợp những bài tập C + + hay có giải thuật, những bạn hoàn toàn có thể tải về và đọc code tìm hiểu thêm. Hi vọng những bạn sẽ có thêm nhiều kỹ năng và kiến thức hay, hữu dụng để nâng cao kỹ năng và kiến thức về C + +. Chúc những bạn thành công xuất sắc !
Source: https://final-blade.com
Category : Kiến thức Internet