1. Trang chủ
  2. » Công Nghệ Thông Tin

Bài tập ngôn ngữ lập trình c (phần2)

11 365 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 11
Dung lượng 527,22 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Trang 1

Lab   bi n  h ng  bi u th c  tóan t  

N i Dung Chính

1 M c tiêu 2 

2 Yêu c u tr c khi vào bu i th c hành này 2 

3 L u ý quan tr ng 2 

4 Bài tóan 2 

Bài 01: Ch ng trình hi n th thông đi p "hello world!" 2 

Bài 02: Hi n th nhi u thông đi p trên các dòng khác nhau 3 

Bài 03: Nh p 2 s nguyên và hi n th t ng, hi u c a chúng 4 

Bài 04: Nh p 2 s b t k , tính t ng, hi u c a chúng 5 

Bài 05: Làm quen hàm getchar và putchar 6 

Bài 06: Vi t di n tích hình tròn 6 

Bài 7: Bi u th c 7 

Bài 8: So sánh 7 

Bài 9: Chuy n đ i ki u 8 

Bài 10: T ng h p 8 

Bài 11: Vi t ch ng trình chuy n đ i t đ C(Celsius) sang đ F(Fahrenheit) 9 

Bài 12: Vi t ch ng trình chuy n đ i t đ F(Fahrenheit) sang đ C(Celsius) 9 

Bài 13: Tính đi m trung bình c a Sinh viên 9 

Bài 14: Vi t ch ng trình nh p vào n m sinh, in ra tu i 10 

Bài 15: Ch ng trình b ng mã ASCII (không dùng hàm chuy n đ i): 10 

Bài 16: Hi n th ký t đ c bi t 10 

5 Ph l c 1: Hàn scanf và printf 10 

5.1 Hàm nh p: scanf(“Chu i đ nh d ng”, đ a ch c a các bi n); 10 

5.2 Hàm xu t: printf(“Chu i đ nh d ng ”, Các bi u th c); 11 

Trang 2

1 M c tiêu

• H c cách biên d ch và ch y ch ng trình C đ n gi n

• Làm quen v i ki u d li u, tóan t trong C

• S d ng bi n, ki u d li u, tóan t , bi u th c trong C

• nh d ng hàm xu t nh p: printf và scanf

2 Yêu c u tr c khi vào bu i th c hành này

• c tài li u h ng d n s d ng DEV-CPP (Lab00)

• Ki m tra đã có ph n m m DEVCPP (D:\DEV-C++) trên máy tính c a phòng lab ch a?

o Ch a có: liên h gi ng viên h ng d n phòng lab đ copy & cài đ t

o ã có: Ch y ch ng trình Devcpp.exe trong th m c DEV-CPP

• Ôn l i ki n th c v h ng, bi n, ki u d li u, bi u th c, tóan t trong C

• T o th m c đ l u mã ngu n trong d a D nh sau: D:\Ma_Lop\THDC\Ho_ten\Labxx:

o Ma_Lop: Ký hi u c a l p và khóa: VD: DV1K2: L p TVT1, khóa 2

o Ho_ten: S d ng câu trúc: ho_dem_ten, ti ng vi t không d u

o Labxx: Thay th xx b ng 01, 02, …

o VD: Nguy n v n An, l p DV2, khóa 3, làm bài lab s 2 s l u trong th m c nh

sau: d:\DV2K3\THC\nguyen_van_an\Lab02

• L u tên c a file theo c u trúc Labxxbyy.c trong đó xx, yy =01,02,… t ng ng v i lab

và bài VD: Bài 01 trong Lab01 s có tên file là lab01b01.c

3 L u ý quan tr ng

• Các đ an mã ngu n trong các bài sau có th có l i khi biên d ch Hãy s a l i và

thêm các file header phù h p n u c n

• Không s d ng các file header mà ANSI C 1999 không cung c p

4 Ch ng trình

Bài 01: Ch ng trình hi n th thông đi p "hello world!"

/**********************************************************************

* Lab 01, Bai 01

* Tac gia: Nguyen X , MSSV: 123456789

* Lop: DV2, Khoa 3

* Lab01b01: Hien thi thong diep "hello world!"

* Created date: 10/09/2009 ; Modified date:

**********************************************************************/

#include <stdio.h>

int main()

{

printf("hello world!");

return 0;

}

H ng d n biên d ch và ch y xem k t qu Bài t p 01:

Trang 3

• Nh p và l u mã ngu n vào th m c t ng ng , có tên là lab01b01.c

• Vào menu compile å compile (Ctrl-F9), đ biên d ch ra file lab01b01.exe

• Vào menu Runå Run (Ctrl-F10) ch y ch ng trình đ xem k t qu N u không có màn

hình k t qu xu t hi n th c hi n theo b c sau:

o Trong Windows XP, Vào menu start å Run, trong h p th ai open gõ dòng l nh

cmd xong nh n Enter Màn hình Dos xu t hi n

o S d ng l nh CD, chuy n sang th m c ch a file exe m i t o xong gõ l nh

lab01b01, nh n Enter đ xem k t qu

a S a l i đ an code trên nh sau Th c hi n l i b c 2 & 3 trên và so sánh k t qu

th c hi n

#include <stdio.h>

int main()

{

printf("hello world!");

getchar();

return 0;

}

b Thay th dòng l nh printf("hello world!"); b ng 2 dòng l nh sau Cho bi t k t qu th c

hi n? Gi i thích

printf("Hello ");

printf("world!\n");

c S a l i ch n trình trên đ in ra màn hình 2 dòng ch nh sau:

• Dòng 1: Hello DV K3

• Dòng 2: First program in C language

Bài 02: Hi n th nhi u thông đi p trên các dòng khác nhau

Vi t ch ng trình nh p vào h và tên sau đó in ra l i chào N i dung màn hình nh sau:

G i ý: S d ng hàm gets(variable_name) đ đ c vào 1 chu i ký t

L u mã ngu n v i tên file là lab01b02.c ; n i dung b t đ u bài 02 nh sau:

/**********************************************************************

* Lab 01, Bai 02.c

* Tac gia: Nguyen Van An, MSSV: 123456789

* Lop: DV2, Khoa 3,

* Nhap Ho va ten va in ra loi chao

* Created date: 10/09/2009 ; Modified date:

**********************************************************************/

Nhap ho va ten: Nguyen Van An Hello Nguyen Van An

Trang 4

#include <stdio.h>

int main()

{

char str[50];

printf (“ Nhap ho va Ten:”

scanf ( “%s”, str);

printf (“\nHello %s \n” , str);

getchar;

return 0;

}

a Nh p h và tên có kh ang tr ng cho bi t k t qu

b Thay th dòng l nh scanf ( “%s”, str); b ng hàm gets(str); ch y l i ch ng trình và cho

bi t k t qu ?

Bài 03: Nh p 2 s nguyên và hi n th t ng, hi u c a chúng

/**********************************************************************

* Lab 01, Bai 03.c

* Tac gia: Nguyen Van An, MSSV: 123456789

* Lop: DV2, Khoa 3,

* Nhap 2 so nguyên, tinh tong, hieu cua chung

* Created date

**********************************************************************/

#include <stdio.h>

int main()

{

int iNum1, iNum2, iTong, iHieu;

printf("\Nhap so thu nhat : ");

scanf("%d", &iNum1);

printf("Nhap so thu hai : ");

scanf("%d", &iNum2);

iTong = iNum1 + iNum2;

iHieu = iNum1 – iNum2 ;

printf("Tong cua 2 so la %d", iTong);

printf("\nHieu cua 2 so la %d", iHieu, “\n”);

getchar();

return 0;

}

a) Biên d ch ch ng trình trên, th c hi n nhi u l n nh p 2 s nh trong b ng sau, so sánh

k t qu ch ng trình th c hi n và k t qu th c t N u k t qu khác nhau hãy gi i

thích và đ a ra gi i pháp trong tr ng h p t ng quát?

Trang 5

a b T ng (Lý thuy t/Ch ng trình) Hi u (Lý thuy t/Ch ng trình)

10000 5000

20000 20000

25000 25000

b Thay th dòng l nh printf("Tong cua 2 so la %d", iTong); b ng dòng l nh:

printf("%d + %d = %d", iNum1, iNum2, iTong); cho bi t k t qu

c S a ch ng trình đ k t qu in ra nh hình sau:

Bài 04: Nh p 2 s b t k , tính t ng, hi u c a chúng

/**********************************************************************

* Lab 01, Bai 04.c

* Tac gia: Nguyen Van An, MSSV: 123456789

* Lop: DV2, Khoa 3,

* Nhap 2 so b t k , tinh tong, hieu cua chung

* Created date

**********************************************************************/

#include <stdio.h>

int main()

{

/* Mã ngu n ch ng trình t i đây */

}

Chú ý:

a T ng hi u c a 2 s b t k

b Xem đ an code sau: Chú ý hàm scanf nh p 1 l n 2 s Th nh p 4 7 8, k t qu ?

Enter first value:

200

Enter second value:

100

Result:

200

+

100

=

300

200

-

100

=

100

Trang 6

float a , b , c;

printf("Nhap 2 so: \n");

scanf("%f%f" , &a , &b);

c = a * b ;

printf("%f * %f = %f\n" , a , b , c);

Bài 05: Làm quen hàm getchar và putchar

/**********************************************************************

* Lab 01, Bai 05.c

* Tac gia: Nguyen Van An, MSSV: 123456789

* Lop: DV2, Khoa 3,

* Su dung Ham getchar va putchar

* Created date

**********************************************************************/

#include <stdio.h>

int main()

{

int n ;

char ch;

printf ( "Nhap 1 so bat ky: \n");

scanf ( “%2d” , &n) ;

printf("So vua nhap la %d”: \n", n);

printf("Nhap ky tu bat ky: \n");

ch = getchar();

putchar(ch+1);

putchar(ch-1);

getchar();

return 0;

}

a Nh n xét k t qu khi ch y ch ng trình trên?

b Ch y l i ch ng trình, nh p s 12345 cho bi t k t qu ? Gi i thích?

c Thêm dòng l nh fflush(stdin); sau dòng putchar(ch-1), cho bi t k t qu ?

Bài 06: Vi t di n tích hình tròn

#include<stdio.h>

int main()

{

const float PI = 3.14;

float fBanKinh, fDienTich;

scanf (“Nhap bán kính : %d\n”, &fBanKinh);

fDienTichtich = PI * fBanKinh * fBanKinh;

printf (“Dien tich vong tron : %8:2f\n”, fDienTich);

getchar();

}

Trang 7

a Ch y ch ng trình trên nh p s li u và cho bi t k t qu ?

b Th thay th s 8 và s 2 trong dòng l nh s 8 b ng các s khác nhau, nh n xét?

c S a ch ng trên đ in ra chu vi và di n tích vòng tròn

Bài 7: Bi u th c

#include <stdio.h>

int main()

{

int a, b, c, d ;

a = 3;

b = 4;

c = 5;

d = a * b + c/2;

printf(“\n The value after a*b+c/2 is: %d”, d);

d = a % b;

printf(“\n The value after a mod b is: %d”, d);

d = a * b - c;

printf(“\n The value after a*b-c is: %d”, d);

d = a / b + c;

printf(“\n The value after a/b+c is: %d”, d);

d = a + b * c;

printf(“\n The value after a+b*c is: %d”, d);

d = (a + b) *c;

printf(“\n The value after (a+b)*c is: %d”, d);

d = a * ( b + c + (a - c) * b);

printf(“\n The value after a*(b+c+(a-c)*b) is: %d”, d);

return 0 ; }

a Ch y th ch ng trình trên, cho bi t k t qu

b S a l i ch ng trình đ nh p a, b, c t bàn phím và in ra k t qu

Bài 8: So sánh

#include <stdio.h>

int main()

{

int a = 5, b = 6, c = 7;

printf ("int a = 5, b = 6, c = 7;\n");

printf("\nThe value of a > b is \t%i", a > b);

printf("\nThe value of b < c is \t%i", b < c);

printf("\nThe value of a + b >= c is \t%i", a + b >= c);

printf("\nThe value of a - b <= b - c is \t%i", a-b <= b-c);

printf("\nThe value of b-a == b - c is \t%i", b - a == b - c);

printf("\nThe value of a*b != c * c is \t%i", a * b < c * c);

printf(“\nResult of a>10 && b<5 = %d“, a>10 && b<5);

printf(“\nResult of a > 100 || b < 50 = %d”, a>100 || b<50);

return 0;

Trang 8

}

a Ch y th ch ng trình trên, s a l i n u có

b Thay đ i giá tr c a a, b, c, th l i k t qu

Bài 9: Chuy n đ i ki u

#include <stdio.h>

int main()

{

printf(“40/17*13/3 = %d”, 40/17*13/3);

printf(“\n\n40/17*13/3.0 = %lf”, 40/17*13/3.0);

printf(“\n\n40/17*13.0/3 = %lf”, 40/17*13.0/3);

printf(“\n\n40/17.0*13/3 = %lf”, 40/17.0*13/3);

return 0 ; }

a Ch y ch ng trình trên, cho bi t k t qu ?

b S d ng ép ki u d ng (float) a/b; th l i v i các l nh trên, cho bi t k t qu ?

c Tính các bi u th c sau Vi t ch ng trình ki m tra l i k t qu ?

(double) (5 * 4 / 8);

(float) (4 + 7);

Bài 10: T ng h p

Xác đ nh giá tr c a các bi u th c sau Vi t ch ng trình ki m tra l i k t qu

(4-2*9/6<=3 && (10*2/4-3 > 3 || (1 < 5 && 8>10))));

10 * 3 ^ 6 * 6 + 5 – 2 && (2 * 2 + 6 /3 > 1 || 2 >8) ;

Tính x, (int x;)

x = (2 + 3) * 6;

x = (12 + 6) / 2 * 3;

y = x = (2 + 3) / 4;

y = 3 + 2 * (x = 7 / 2);

x = (int) 3.8 + 3.3;

x = (2 + 3) * 10.5;

x = 3 / 5 * 22.0;

x = 22.0 * 3 / 5;

Tính giá tr c a s (int s;)

a = 10, b = 8, c = 6, d = 5, e = 2;

s = a - b - c - d;

s = a - b + c - d;

s = a + b / c / d;

s = a + b / c * d;

s = a / b * c * d;

s = a % b / c * d;

s = a % b % c % d;

s = a - (b - c) - d;

Trang 9

s = (a - (b - c)) - d;

s = a - ((b - c) - d);

s = a % (b % c) * d * e;

s = a + (b - c) * d - e;

s = (a + b) * c + d * e;

s = (a + b) * (c / d) % e;

G i ý: Vi t đ an ch ng trình, s d ng hàm printf in ra k t qu đ ki m tra tính tóan

Bài 11: Vi t ch ng trình chuy n đ i t đ C(Celsius) sang đ F(Fahrenheit)

/**********************************************************************

* Lab 01, Bai 11.c

* Tac gia: Nguyen Van An, MSSV: 123456789

* Lop: DV2, Khoa 3,

* Chuong trinh chuyen doi tu do C sang do F: F = (9/5)*C + 32

* Created date:

**********************************************************************/

#include <stdio.h>

int main()

{

/* Mã ngu n ch ng trình t i đây */

}

Bài 12: Vi t ch ng trình chuy n đ i t đ F(Fahrenheit) sang đ C(Celsius)

/**********************************************************************

* Lab 01, Bai 12.c

* Tac gia: Nguyen Van An, MSSV: 123456789

* Lop: DV2, Khoa 3,

* Chuong trinh chuyen doi tu do F sang do C: C = 5*(F-32)/9

* Created date:

**********************************************************************/

#include <stdio.h>

# include <conio.h>

int main()

{

/* Mã ngu n ch ng trình t i đây */

}

Bài 13: Tính đi m trung bình c a Sinh viên

Vi t ch ng trình nh p vào đi m c a sinh viên các môn Toán, Lý, Hóa Hi n th ra ra đi m

trung bình c a sinh viên theo nh hình bên

Toan: 9.3

Ly: 7.5

Hoa: 8.2

-

Trung Binh: xx.x

Trang 10

/**********************************************************************

* Lab 01, Bai 13.c

* Tac gia: Nguyen Van An, MSSV: 123456789

* Lop: DV2, Khoa 3,

* Chuong trinh Nhap va Tinh Diem Trung Binh Toan, Ly, Hoa Cua SV

* Created date:

**********************************************************************/

#include <stdio.h>

int main()

{

/* Mã ngu n ch ng trình t i đây */

}

Bài 14: Vi t ch ng trình nh p vào n m sinh, in ra tu i

(ví d nh p 1991 in ra: Ban sinh n m 1991, vay ban 19 tuoi)

Bài 15: Ch ng trình b ng mã ASCII (không dùng hàm chuy n đ i):

• Nh p vào m t ký t và in ra mã ASCII t ng ng v i ký t đó

• Nh p vào m t s nguyên (1 å 255) và in ra ký t có mã ASCII t ng ng

Bài 16: Hi n th ký t đ c bi t

Tham kh o hàm scanf và printf cùng v i b ng ký t đi u khi n, vi t ch ng trình th c hi n:

• Hi n th ký t “ ; ký t ‘ ; ký t ? ; ký t tab, ký t \, ký t %

• Nh p s nguyên ch có 3 ch s

• Xu t ra s th c 4 ch s nguyên và 3 ch s th p phân

• In b ng c u ch ng 1 x 2 = 2 trên màn hình

• c 1 ký t , in ra ký t đ ng tr c và đ ng sau nó trong b ng mã ASCII

5 Ph l c 1: Hàn scanf và printf

5.1 Hàm nh p: scanf(“Chu i đ nh d ng”, đ a ch c a các bi n);

Trang 11

5.2 Hàm xu t: printf(“Chu i đ nh d ng ”, Các bi u th c);

Ngày đăng: 03/12/2015, 15:09

TỪ KHÓA LIÊN QUAN

w