DANH SÁCH BÀI VIẾT Giải bài tập thực hành 1 – Các thành phần trong ngôn ngữ C Giải bài tập thực hành 2 – Cấu trúc rẽ nhánh Giải bài tập thực hành 3 – Cấu trúc lặp for Giải bài thực hành 4 – Cấu trúc lặp While, do…while Giải bài thực hành 5 – HÀM Giải bài thực hành 6 – Truyền tham số cho hàm Giải bài thực hành 7 – Mảng Giải bài thực hành 8 – Chuỗi ký tự Giải bài thực hành 9 – Kiểu cấu trúc Giải bài thực hành 10 – Tập tin
Bài thực hành 6 – Truyền tham số cho hàm
Bài 3. Cho 2 số nguyên a, b. Viết hàm hoán vị giá trị 2 số trên.
Code mẫu
#include<stdio.h>
int Hoanvi(int a, int b);
int main() {
int a, b;
do {
printf("Nhap a = ");
scanf("%d",&a);
printf("Nhap b = ");
scanf("%d",&b);
} while(a<0 || b<0);
Hoanvi(a,b);
}
int Hoanvi(int a, int b) {
int temp;
temp=a;
a=b;
b=temp;
printf("a = %d, b = %d",a,b);
}
Bài 4. Viết chương trình nhập 2 số nguyên dương a, b. Tìm USCLN và BSCNN của 2 số nguyên đó.
Code mẫu
#include <stdio.h>
void Bc(int a,int b);
int main() {
int a, b;
do {
printf("Nhap a , b = ");
scanf("%d%d",&a,&b);
} while (a<=0 || b<=0);
Bc(a,b);
}
void Bc(int a,int b) {
int x=a;
int y=b;
while(a!=b) {
if(a>b)
a=a-b;
else
b=b-a;
}
printf("\nuoc chung lon nhat la %d",b);
printf("\nboi chung nho nhat la %d",(x*y)/b);
}
Bài 5. Viết chương trình nhập số nguyên dương n gồm k chữ số(0<k<=5), đếm xem n có bao nhiêu chữ số chẵn và bao nhiêu chữ số lẻ.
Code mẫu
#include<stdio.h>
void chan(int x);
void le(int x);
int main() {
int n, a, b, c, d,e ,y ;
do {
printf("Nhap n(1<n<65536): ");
scanf("%d",&n);
} while(n<1 || n>65536);
a = n/10000;
b = n%10000/1000;
c = n%1000/100;
d = ((n%100/10));
e = (n%10);
printf("a= %d,b= %d,c= %d,d= %d,e= %d ",a,b,c,d,e);
chan(a);
le(a);
chan(b);
le(b);
chan(c);
le(c);
chan(d);
le(d);
chan(e);
le(e);
}
void chan(int x) {
int chan;
if(x==0)
chan = 0;
else {
if(x%2==0)
chan = 1;
else
chan = 0;
}
if(chan==1)
printf("chan ");
else
printf(" ");
return chan;
}
void le(int x) {
int le;
if(x==0)
le = 0;
else {
if(x%2==0)
le = 0;
else
le = 1;
}
if(le==1)
printf("le ");
else
printf(" ");
return le;
}
Bài 6. Viết chương trình nhập số nguyên dương n gồm k chữ số(0<k<=5), sau đó nhập một số nguyên x, tìm vị trí xuất hiện của chữ số có giá trị x trong n. Ví dụ: nhập n=1526,x=2. Kết quả: chu so 2 o vi tri thu 3.
Code mẫu
#include<stdio.h>
int main() {
int n, a, b, c, d, e, y;
do {
printf("Nhap n(1<n<65536): ");
scanf("%d",&n);
} while(n<1 || n>65536);
printf("Nhap x: ");
scanf("%d",&y);
a = n/10000;
b = n%10000/1000;
c = n%1000/100;
d = ((n%100/10));
e = (n%10);
if(y==a) {
printf("so %d o vi tri thu 1",y);
}
if(y==b) {
if(a!=0)
printf("so %d o vi tri thu 2",y);
else
printf("so %d o vi tri thu 1",y);
}
if(y==c) {
if(a==0 && b==0)
printf("so %d o vi tri thu 1",y);
else if(a==0 && b!=0)
printf("so %d o vi tri thu 2",y);
else
printf("so %d o vi tri thu 3",y);
}
if(y==d) {
if(a==0 && b==0 && c==0)
printf("so %d o vi tri thu 1",y);
else if(a==0 && b==0 && c!=0)
printf("so %d o vi tri thu 2",y);
else if(a==0 && b!=0 && c!=0)
printf("so %d o vi tri thu 3",y);
else
printf("so %d o vi tri thu 4",y);
}
if(y==e) {
if(a==0 && b==0 && c==0 && d==0)
printf("so %d o vi tri thu 1",y);
else if(a==0 && b==0 && c==0 && d!=0)
printf("so %d o vi tri thu 2",y);
else if(a==0 && b==0 && c!=0 && d!=0)
printf("so %d o vi tri thu 3",y);
else if(a==0 && b!=0 && c!=0 && d!=0)
printf("so %d o vi tri thu 4",y);
else
printf("so %d o vi tri thu 5",y);
}
}