cslt1hvtc
Các hàm cơ bản
B1: chuyen so nguyen duong tu he 10 sang he 2
#include<stdio.h>
#include<conio.h>
main()
{ clrscr();
int m,k, n; int a[20];
printf("
nhap so nguyen duong n=");scanf("%d",&n);
m=0;
printf("
so %d duoc hien thi o he 2 la : ", n);
while (n!=0)
{
a[m]= n % 2;
m++;
n=n/2;
}
for (int j=m-1;j>=0;j--)
printf("%d",a[j]);
getch();
}
Bai 2:
Hàm nhập DS sinh viên và điểm TB bằng mảng 2 chiều:
void nhap(char hoten [][100], int n)-Chiều 1 la so SV,chiều 2 la độ dài xâu
{
int i;
printf("Nhap so SV n= "); scanf("%d",&n);
for(i=1; i<=n; i++)
{
printf("
Sinh vien thu %d la : ",i);
printf("
ho ten :");
fflush(stdin);
gets(hoten[i]);
printf("Diem trung binh :");
scanf("%f",&dtb[i]);
}
}
void hoanvi(float *x,float *y) –Hàm đổi chỗ hai số
{
float tg=*x; *x=*y; *y=tg;
}
void sapxep() –Hàm sắp xếp tên theo chiều tăng của DTB
{ int i,j;
char temp[30];
for(i=1; i<=n-1; i++)
for(j=i+1;j<=n;j++)
if (dtb[i]<dtb[j])
{
strcpy(temp,hoten[i]);
strcpy(hoten[i],hoten[j]);
strcpy(hoten[j],temp);
hoanvi(&dtb[i],&dtb[j]);
}
}
Bài 3: Hàm tìm UCLN và BCNN
int ucln (int a, int b)
{
int sodu;
while(b!=0)
{
sodu=a%b;
a=b;
b=sodu;
}
return a;
}
int bcnn(int a,int b)
{
return (a*b)/uc(a,b);
}
Tìm UC va BC cua mảng thì :
- tìm uc va bc cua 2 Ptu dau tien : temp= bcnn(a[0],a[1]);
- sau đó tìm uc va bc : kq=bcnn(temp,a[i]) với i từ 2 đến n-1.
- In ra Kq;
Bài 4: hàm xác định số nguyên tố
int check(int n)
{
int i;
if (n==1 ||n==2) return 1;
else
{for(i=2;i<=sqrt(n);i++)
if (n%i==0) {return 0;break;}
return 1;
}
}
+ hàm đổi chỗ hai xâu:
void doi_cho(char *s1, char *s2)
{
char *tg;
strcpy(tg,s1);
strcpy(s1,s2);
strcpy(s2,tg);
}
+ hàm sắp xếp họ tên trong mảng theo ma ACII:
void sapxep(char s[][100],int n)
{
int i,j;
for(i=0;i<n-1;i++)
for(j=i+1;j<n;j++)
if(strcmp(s[i],s[j])>0)
doi_cho(s[i],s[j]);
}
Bạn đang đọc truyện trên: Truyen4U.Com