Bài tập C++ hay có lời giải

Các bạn đang học C + + và những bạn đang muốn tìm thêm những bài tập C + + mẫu hay để tìm hiểu và khám phá và học tập nâng cao kiến thức và kỹ năng C + + cho mình. Vậy mời những bạn cùng tìm hiểu thêm và tải những bài tập C + + hay có giải thuật mà bài viết tổng hợp và san sẻ dưới đây .

Bài tập C++ hay có lời giải

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 .

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

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 !