Tổng hợp bài tập lập trình C
Dãy Fibonacci trong C
Chương trình in dãy Fibonacci không sử dụng hàm đệ qui trong C
#include<stdio.h> #include<conio.h> int main() { int n1=0,n2=1,n3,i,sopt; printf("Ban hay nhap so phan tu trong day Fibonacci: "); scanf("%d",&sopt); printf("\n%d %d",n1,n2); //in hai so 0 va 1 for(i=2;i<sopt;++i) //vong lap bat dau tu 2 boi vi 0 va 1 da duoc in { n3=n1+n2; printf(" %d",n3); n1=n2; n2=n3; } printf("\n\n===========================\n"); printf("Viethoang blog chuc cac ban hoc tot!"); getch(); }
Chương trình in dãy Fibonacci sử dụng hàm đệ qui trong C
#include<stdio.h> #include<conio.h> // khai bao ham indayFibonacci void indayFibonacci(int n){ static int n1=0,n2=1,n3; if(n>0){ n3 = n1 + n2; n1 = n2; n2 = n3; printf("%d ",n3); indayFibonacci(n-1); } } // ham main de in day Fibonacci int main(){ int n; scanf("%d",&n); printf("Hien thi day Fibonacci tren man hinh\n\n"); printf("%d %d ",0,1); indayFibonacci(n-2); //n-2 boi vi 2 phan tu dau tien da duoc in printf("\n\n===========================\n"); printf("VietJack chuc cac ban hoc tot!"); getch(); }
Kiểm tra số nguyên tố trong c
Chương trình C để tìm kiểm tra số đã nhập có phải là số nguyên tố
#include<stdio.h> #include<conio.h> int main() { int n,i,m=0,biendem=0; scanf("%d",&n); m=n/2; for(i=2;i<=m;i++) { if(n%i==0) { printf("\nSo nhap khong la so nguyen to."); biendem=1; break; } } if(biendem==0) printf("\nSo nhap la so nguyen to."); printf("\n\n===========================\n"); printf("Viethoang Blog chuc cac ban hoc tot!"); getch(); }
Số Palindrome trong C
Bài tập
Viết một chương trình C để kiểm tra xem số bạn nhập vào có phải là số Palindrome hay không. Số Palidrome là số mà bạn đọc theo chiều xuôi và chiều ngược thì đều như nhau. Ví dụ như 131, 151, 34543, 48984, ...
Chương trình C để kiểm tra số Palindrome
Mình sử dụng thuật toán sau để tìm số Palindrome:
#include<stdio.h> #include<conio.h> main() { int n,r,sum=0,bientam; scanf("%d",&n); bientam=n; while(n>0) { r=n%10; sum=(sum*10)+r; n=n/10; } if(bientam==sum) printf("\nSo ban da nhap la so Palindrome!"); else printf("\nSo ban da nhap khong phai la so Palindrome!"); printf("\n\n===========================\n"); printf("Viethoang Blog chuc cac ban hoc tot!"); getch(); }
Giai thừa - Cách tính giai thừa trong C
Bài tập
Viết một chương trình C để tính giai thừa của một số bất kỳ được nhập từ người dùng, theo hai cách: sử dụng vòng lặp và sử dụng hàm đệ qui.
Chương trình C sử dụng vòng lặp để tính giai thừa
#include<stdio.h> #include<conio.h> int main(){ int i,giaithua=1,sobatky; printf("Nhap mot so bat ky: "); scanf("%d",&sobatky); for(i=1;i<=sobatky;i++){ giaithua=giaithua*i; } printf("\nGiai thua cua %d la: %d",sobatky,giaithua); printf("\n\n===========================\n"); printf("VietHoang Blog chuc cac ban hoc tot!"); getch(); }
Chương trình C sử dụng hàm đệ qui để tính giai thừa
#include<stdio.h> #include<conio.h> // khai bao ham tinhgiaithua long tinhgiaithua(int n) { if (n == 0) return 1; else return(n * tinhgiaithua(n-1)); } // ham main de tinh giai thua int main() { int sobatky; long giaithua; printf("Nhap mot so bat ky: "); scanf("%d", &sobatky); giaithua = tinhgiaithua(sobatky); printf("Giai thua cua %d la: %ld", sobatky, giaithua); printf("\n\n===========================\n"); printf("VietHoang Blog chuc cac ban hoc tot!"); getch(); }
Số Armstrong trong C
Bài tập
Viết một chương trình C để nhập một số và kiểm tra xem số đó có phải là số Armstrong hay không.
Số Armstrong là số có giá trị bằng tổng lập phương của các chữ số trong số đó. Ví dụ: 153 là số Armstrong bởi vì (1*1*1) + (3*3*3) + (5*5*5) = 153.
Chương trình C để kiểm tra số Armstrong
#include<stdio.h> #include<conio.h> main() { int n,r,sum=0,bientam; printf("Nhap mot so bat ky = "); scanf("%d",&n); bientam=n; while(n>0) { r=n%10; sum=sum+(r*r*r); n=n/10; } if(bientam==sum) printf("\nSo da cho la so Armstrong "); else printf("\nSo da cho khong phai la so Armstrong"); printf("\n\n===========================\n"); printf("VietHoang chuc cac ban hoc tot!"); getch(); }
Nhân ma trận trong C
Bài tập
Viết một chương trình C để nhập hai ma trận và tính tích của hai ma trận đó.
Chương trình C để nhập và tính tích hai ma trận
#include<stdio.h> #include<conio.h> main() { int a[10][10],b[10][10],matrantich[10][10],hang,cot,i,j,k; printf("Nhap so hang = "); scanf("%d",&hang); printf("\nNhap so cot = "); scanf("%d",&cot); printf("\nNhap cac phan tu cua ma tran thu nhat\n"); for(i=0;i<hang;i++) { for(j=0;j<cot;j++) { scanf("%d",&a[i][j]); } } printf("\nNhap cac phan tu cua ma tran thu hai\n"); for(i=0;i<hang;i++) { for(j=0;j<cot;j++) { scanf("%d",&b[i][j]); } } printf("\nTich cua hai ma tran la:\n"); for(i=0;i<hang;i++) { for(j=0;j<cot;j++) { matrantich[i][j]=0; for(k=0;k<cot;k++) { matrantich[i][j]+=a[i][k]*b[k][j]; } } } // hien thi ket qua for(i=0;i<hang;i++) { for(j=0;j<cot;j++) { printf("%d\t",matrantich[i][j]); } printf("\n"); } printf("\n\n===========================\n"); printf("VietHoang chuc cac ban hoc tot!"); getch(); }
Các bạn có thể tham khảo thêm tại: http://123link.pw/laptrinhc
Nhận xét