PDA

View Full Version : 4 Bài Tập Borland C căn bản


khigiadano
02-06-2008, 09:53 PM
Sau khi nhập mă vào cửa sổ soạn thảo th́ bấm Ctrl + F9 để chạy chương tŕnh

Bài 1 : Hiển thị 1 ḍng chữ đơn giản#include<stdio.h>
#include<conio.h>
void main()
{
printf("Bai hoc C dau tien cung Khi Gia Da No");
getch();
}Sau khi bấm Ctrl + F9 để chạy th́ trên màn h́nh sẽ in ra ḍng chữ
Bai hoc C dau tien cung Khi Gia Da NoMuốn hiển thị nhiều ḍng chữ th́ các bạn tạo thêm nhiều ḍng lệnh printf
Chú ư: Để chữ in ra trên nhiều ḍng th́ phải có Enter xuống ḍng, lệnh Enter xuống ḍng trong Borland C là: \n

Tiếp dưới đây là ví dụ hiển thị 3 ḍng chữ
#include<stdio.h>
#include<conio.h>
void main()
{
printf("CD CNTT Tp.HCM \n");
printf("Hanh Trang Sinh Vien \n");
printf("Bai hoc C dau tien cung Khi Gia Da No \n");
getch();
}Khi chạy màn h́nh sẽ in ra:
CD CNTT Tp.HCM
Hanh Trang Sinh Vien
Bai hoc C dau tien cung Khi Gia Da No
Nếu bỏ \n ở 3 ḍng đó có nghĩa là ta không Enter xuống ḍng, chương tŕnh sẽ in ra:
CD CNTT Tp.HCMHanh Trang Sinh VienBai hoc C dau tien cung Khi Gia Da No
Bài 2 : Hiển thị 1 số đă nhập vào

#include<stdio.h>
#include<conio.h>
void main()
{
int i;
printf("Nhap vao 1 so: ");
scanf("%d", &i);
printf("So ban vua nhap la: %d", i);
getch();
} Ḍng int i; là lệnh khai báo, kư tự i ở đây là tên của biến, mỗi biến là 1 kiểu dữ liệu nhập, i ở đây ta quy định là kiểu số nguyên (integer) viết tắt là int
Ḍng scanf("%d", &i); hàm scanf nói đơn giản là để người sử dụng nhập dữ liệu vào và sau khi nhập vào nó sẽ gán giá trị đó vào biến i
Ḍng printf("So ban vua nhap la: %d", i); . %d có nghĩa là xác định vị trí giá trị của biến xuất ra nằm ở đâu, &i là gọi lại dữ liệu mà người dùng đă nhập lúc năy đặt vào vị trí mà %d đă xác định


Bài 3 : Phép cộng 2 số
#include<stdio.h>
#include<conio.h>
void main()
{
int a,b,s;
printf("Nhap so a: ");
scanf("%d", &a);
printf("Nhap so b: ");
scanf("%d", &b);
s=a+b;
printf("Tong cua hai so %d và %d la %d",a,b,s);
getch();
} printf("Tong cua hai so %d va %d la %d",a ,b , s);
Trong ḍng này ta thấy xuất hiện 3 cái %d và 3 biến ở phía sau, th́ khi hiển thị nó sẽ hiển thị theo thứ tự.Biến a đứng đầu trong hàm này nên %d đầu tiên là vị trí hiển thị của biến a, tiếp theo đến 2 %d sau là của biến b và biến s


Bài 4 : So sánh 2 số
#include<stdio.h>
#include<conio.h>
void main()
{
int a, b;
printf("Nhap so a: ");
scanf("%d", &a);
printf("Nhap so b: ");
scanf("%d", &b);

if(a==b)
printf("a bang b");

else

printf("a khong bang b");
getch();
} Ở đây ta dùng Hàm điều kiện IF
if(a==b) <-- Nếu a bằng b là đúng th́ sẽ cho in ra ḍng chữ lấy từ hàm printf ngay bên dưới
else <-- ngược lại, có nghĩa là ngược lại với nếu ở trên là a không bằng b th́ sẽ in ra ḍng chữ lấy từ hàm printf phía bên dưới ḍng else


Các chủ đề tham khảo thêm:
1 số bài tập C nâng cao hơn 1 chút (http://hanhtrangsinhvien.net/forum/showthread.php?t=488)

Giải Đáp Bài Tập "Giáo tŕnh Ngôn Ngữ C" của trường ITC (http://hanhtrangsinhvien.net/forum/showthread.php?t=1215)

BangChuCaiBang
14-10-2008, 08:57 PM
Đại ca ơi, c̣n bài toán nhập vào 3 số nguyên. Xuất ra theo thứ tự tăng dần hoặc giảm dần th́ seo ạ?
VD: nhập vào 10 -5 6 (yc xuất tăng dần)
--> -5 6 10

hoangthienthach
15-10-2008, 02:14 AM
Đại ca ơi, c̣n bài toán nhập vào 3 số nguyên. Xuất ra theo thứ tự tăng dần hoặc giảm dần th́ seo ạ?
VD: nhập vào 10 -5 6 (yc xuất tăng dần)
--> -5 6 10

void Sort(int a[], int n)
{
for(int i=0;i<n-1;i++)
for(int j=i+1;j<n;j++)
if(a[i]<a[j])
{
int tam=a[i];
a[i]=a[j];
a[j]=tam;
}

}
Đây là một hàm sắp xếp tăng trực tiếp
c̣n giảm th́ dễ rồi

BangChuCaiBang
15-10-2008, 02:39 AM
void Sort(int a[], int n)
{
for(int i=0;i<n-1;i++)
for(int j=i+1;j<n;j++)
if(a[i]<a[j])
{
int tam=a[i];
a[i]=a[j];
a[j]=tam;
}

}

Đây là một hàm sắp xếp trực tiếp

Không phải là kiểu mảng, kiểu mảng th́ có sẵn rồi nói làm ǵ nữa. Ở đây là nhập vào 3 số nguyên a, b, c và sắp xếp.

hoangthienthach
15-10-2008, 08:46 AM
#include<stdio.h>
#include<conio.h>
void main ()
{
clrscr();
int a,b,c;
printf("\nNhap so thu nhat vao:");
scanf("%d",&a);
printf("\nNhap so thu hai vao:");
scanf("%d",&b);
printf("\nNhap so thu 3 vao:");
scanf("%d",&c);
if ((a>b)&&(b>c))
printf("\nThu tu tang dan cua 3 so la %d,%d,%d",c,b,a);
if ((a>c)&&(c>b))
printf("\nThu tu tang dan cua 3 so la %d,%d,%d",b,c,a);
if ((b>a)&&(a>c))
printf("\nThu tu tang dan cua 3 so la %d,%d,%d",c,a,b);
if ((b>c)&&(c>a))
printf("\nThu tu tang dan cua 3 so la %d,%d,%d",a,c,b);
if ((c>a)&&(a>b))
printf("\nThu tu tang dan cua 3 so la %d,%d,%d",b,a,c);
if ((c>b)&&(b>a))
printf("\nThu tu tang dan cua 3 so la %d,%d,%d",a,b,c);
getch();
}
Như thế này đă hiểu chưa, nếu chưa hiểu bạn cần đọc sách lại nhiều hơn. Chúc bạn thành công.................

linhnguyenit
15-10-2008, 09:24 AM
Có nhiều cách giải và anh cũng đưa ra một cách phổ thông, nếu nhập lớn hơn 3 số, nên đưa vào mảng để thuận tiện hơn.



#include<stdio.h>
#include<conio.h>
void main ()
{
clrscr();
int a,b,c,max,mid,min,temp;
printf("\nNhap so thu nhat vao:");
scanf("%d",&a);
printf("\nNhap so thu hai vao:");
scanf("%d",&b);
printf("\nNhap so thu 3 vao:");
scanf("%d",&c);
if(a>b)
max=a; min=b;
else
{
max=b; min=a;
}
if( max< c)
{
temp=max; max=c;mid=temp;
}
else
{
if(c>min)
mid=c;
else
{
temp=min;min=c; mid=temp;
}
}


printf("\nThu tu tang dan cua 3 so la %d,%d,%d",max,
mid,min);
getch();
}

nguaogioi
05-11-2009, 09:19 AM
giúp me bài nhập vào 4 số a,b,c,d và cho ra 4 số xếp tăng dần.
em mới học có hàm switch, if