際際滷

際際滷Share a Scribd company logo
Nh畉p v Xu畉t trong CNh畉p v Xu畉t trong C
Input and Output in C Input and Output in C 1 / of 27
Ch動董ng 4
M畛c ti棚u c畛a bi h畛cM畛c ti棚u c畛a bi h畛c
 T狸m hi畛u c叩c hm Nh畉p/Xu畉t c坦 畛nh d畉ng
scanf(), printf()
L畉p tr狸nh v畛i ng担n ng畛 C - Session 6 2/ 25
 S畛 d畛ng c叩c hm Nh畉p/Xu畉t k箪 t畛
getchar(), putchar()
Nh畉p/Xu畉t chu畉nNh畉p/Xu畉t chu畉n
 Th動 vi畛n chu畉n trong C
 Cung c畉p c叩c hm x畛 l箪 nh畉p v xu畉t
chu畉n
 C叩c hm nh畉p/xu畉t k箪 t畛 v chu畛i
L畉p tr狸nh v畛i ng担n ng畛 C - Session 6 3/ 25
 C叩c hm nh畉p/xu畉t k箪 t畛 v chu畛i
 Thi畉t b畛 nh畉p chu畉n th動畛ng l bn ph鱈m.
 Thi畉t b畛 xu畉t chu畉n th動畛ng l mn h狸nh
(console).
 Nh畉p/xu畉t c坦 th畛 動畛c x畛 l箪 qua file
T畉p tin Header <stdio.h>T畉p tin Header <stdio.h>
 #include <stdio.h>
 但y l c但u l畛nh ti畛n x畛 l箪
 stdio.h l t畉p tin header (header file)
 Ch畛a c叩c macro s畛 d畛ng cho nhi畛u hm
L畉p tr狸nh v畛i ng担n ng畛 C - Session 6 4/ 25
 Ch畛a c叩c macro s畛 d畛ng cho nhi畛u hm
nh畉p/xu畉t trong C
 C叩c macro trong stdio.h gi炭p c叩c hm
printf(), scanf(), putchar(), getchar() th畛c
thi
Nh畉p/Xu畉t c坦 畛nh d畉ngNh畉p/Xu畉t c坦 畛nh d畉ng
 printf( )  xu畉t d畛 li畛u c坦 畛nh d畉ng
 scanf( )  nh畉p d畛 li畛u c坦 畛nh d畉ng
 C叩c 畉c t畉 畛nh d畉ng - d湛ng 畛 畛nh d畉ng
L畉p tr狸nh v畛i ng担n ng畛 C - Session 6 5/ 25
 C叩c 畉c t畉 畛nh d畉ng - d湛ng 畛 畛nh d畉ng
gi叩 tr畛 c叩c bi畉n 動畛c nh畉p vo v in ra
printf ( )printf ( )
 Hi畛n th畛 d畛 li畛u ra thi畉t b畛 xu畉t chu畉n nh動 mn h狸nh
C炭 ph叩p  printf ( control string, argument list);
 Danh s叩ch 畛i s畛 (argument list) ch畛a h畉ng, bi畉n,
bi畛u th畛c ho畉c c叩c hm ph但n c叩ch b畛i d畉u ph畉y
 Ph畉i c坦 m達 畛nh d畉ng t動董ng 畛ng trong control
L畉p tr狸nh v畛i ng担n ng畛 C - Session 6 6/ 25
 Ph畉i c坦 m達 畛nh d畉ng t動董ng 畛ng trong control
string cho m畛i 畛i s畛 trong danh s叩ch
 C叩c m達 畛nh d畉ng ph畉i kh畛p v畛i danh s叩ch 畛i s畛 v畛
s畛 l動畛ng, ki畛u d畛 li畛u v th畛 t畛.
 control string lu担n 動畛c 畉t trong d畉u
printf ( ) (tt.)printf ( ) (tt.)
control string c坦 th畛:
1. C叩c k箪 t畛 vn b畉n :
g畛m c叩c k箪 t畛 c坦 th畛 in 動畛c
2. C叩c m達 畛nh d畉ng :
L畉p tr狸nh v畛i ng担n ng畛 C - Session 6 7/ 25
b畉t 畉u v畛i k箪 hi畛u % v theo sau l m畛t m達 畛nh
d畉ng t動董ng 畛ng cho t畛ng ki畛u d畛 li畛u
3. C叩c k箪 t畛 kh担ng in 動畛c :
g畛m tab, blank v new_line
M達 畛nh d畉ngM達 畛nh d畉ng
畛nh d畉ng printf() scanf()
K箪 t畛 董n (single character) %c %c
Chu畛i (string) %s %s
S畛 nguy棚n c坦 d畉u (signed integer) %d %d
S畛 nguy棚n kh担ng d畉u (unsigned integer) %u %u
L畉p tr狸nh v畛i ng担n ng畛 C - Session 6 8/ 25
S畛 nguy棚n kh担ng d畉u (unsigned integer) %u %u
S畛 nguy棚n h畛 16 kh担ng d畉u %x %x
S畛 nguy棚n h畛 8 kh担ng d畉u %o %o
S畛 th畛c d畉u ch畉m 畛ng %f %f ho畉c %e
Long float %lf %lf
Bi畛u di畛n khoa h畛c (d畉ng l滴y th畛a) c畛a
float
%e hay %E %f or %e
Ki畛u float ( %f hay %e , khi ng畉n h董n) %g %f
V鱈 d畛V鱈 d畛
STT L畛nh Chu畛i i畛u
khi畛n
N畛i dung chu畛i
i畛u khi畛n
Danh s叩ch
畛i s畛
Gi畉i th鱈ch
danh s叩ch
畛i s畛
Hi畛n th畛
tr棚n mn
h狸nh
1. printf(%d,300); %d Ch畛 ch畛a m達 畛nh
d畉ng
300 H畉ng 300
2. printf(%d,10+5); %d Ch畛 ch畛a l畛nh
畛nh d畉ng
10 + 5 Bi畛u th畛c 15
3. printf(Good Morning Mr. Lee.); Good
Morning Mr.
Lee.
Ch畛 ch畛a c叩c k箪
t畛 vn b畉n
R畛ng R畛ng Good
Morning
Mr. Lee.
L畉p tr狸nh v畛i ng担n ng畛 C - Session 6 9/ 25
Lee. Mr. Lee.
4. int count = 100;
printf(%d,count);
%d Ch畛 ch畛a l畛nh
畛nh d畉ng
count Bi畉n 100
5. printf(nhello); nhello Ch畛a k箪 t畛 kh担ng
動畛c in v c叩c k箪
t畛 vn b畉n
R畛ng R畛ng hello on
a new
line
6. #define str Good Apple 
..
printf(%s,str);
%s Ch畛 ch畛a l畛nh
畛nh d畉ng
str H畉ng k箪
hi畛u
Good
Apple
7. ..
int count,stud_num;
count=0;
stud_nim=100;
printf(%d %dn,count,
stud_num);
%d %d Ch畛a l畛nh 畛nh
d畉ng v k箪 t畛
kh担ng 動畛c in
count,
stud_num
Hai bi畉n 0 , 100
C叩c k箪 t畛 畉c bi畛tC叩c k箪 t畛 畉c bi畛t
 In ra k箪 t畛 
  In ra k箪 t畛 
L畉p tr狸nh v畛i ng担n ng畛 C - Session 6 10/ 25
  In ra k箪 t畛 
%% In ra k箪 t畛 %
V鱈 d畛 cho hm printf()V鱈 d畛 cho hm printf()
Ch動董ng tr狸nh hi畛n th畛 s畛 nguy棚n, th畉p ph但n, k箪 t畛 v
chu畛i
#include <stdio.h>
void main()
{
L畉p tr狸nh v畛i ng担n ng畛 C - Session 6 11/ 25
{
int a = 10;
float b = 24.67892345;
char ch = A;
printf(Integer data = %d, a);
printf(Float Data = %f,b);
printf(Character = %c,ch);
printf(This prints the string);
printf(%s,This also prints a string);
}
B畛 t畛 trong hm printf( )B畛 t畛 trong hm printf( )
1. B畛 t畛 -
D畛 li畛u in ra 動畛c canh l畛 tr叩i, ph畉n t畛 s畉 動畛c in
b畉t 畉u t畛 v畛 tr鱈 b棚n tr叩i trong c湛ng c畛a tr動畛ng.
L畉p tr狸nh v畛i ng担n ng畛 C - Session 6 12/ 25
2. B畛 t畛 x叩c 畛nh 畛 r畛ng tr動畛ng n
S畛 d畛ng cho t畉t c畉 c叩c ki畛u d畛 li畛u. 畛 r畛ng
tr動畛ng l m畛t s畛 nguy棚n x叩c 畛nh chi畛u di nh畛
nh畉t ch畛a d畛 li畛u in ra
B畛 t畛 trong hm printf( ) (tt.)B畛 t畛 trong hm printf( ) (tt.)
3. 畛 ch鱈nh x叩c .m
S畛 d畛ng v畛i ki畛u float, double. Ch畛 ra s畛 ch畛
s畛 sau ph畉n th畉p ph但n
4. B畛 t畛 0
C叩c s畛 0 動畛c th棚m vo d畛 li畛u khi in ra
L畉p tr狸nh v畛i ng担n ng畛 C - Session 6 13/ 25
C叩c s畛 0 動畛c th棚m vo d畛 li畛u khi in ra
trong tr動畛ng h畛p b畛 t畛 ch畛 畛 r畛ng l畛n (m畉c
畛nh l c叩c kho畉ng tr畉ng)
5. B畛 t畛 l
Hi畛n th畛 c叩c 畛i s畛 nguy棚n ki畛u int hay double.
M達 畛nh d畉ng t動董ng 畛ng l %ld
B畛 t畛 trong hm printf( ) (tt.)B畛 t畛 trong hm printf( ) (tt.)
6. B畛 t畛 h
B畛 t畛 ny 動畛c s畛 d畛ng 畛 hi畛n th畛 d畉ng
short int. M達 畛nh d畉ng t動董ng 畛ng nh動 l
%hd
L畉p tr狸nh v畛i ng担n ng畛 C - Session 6 14/ 25
%hd
7. B畛 t畛 *
Ch動董ng tr狸nh s畉 x叩c 畛nh 畛 r畛ng 畛
ch畛a d畛 li畛u
V鱈 d畛 v畛 c叩c b畛 t畛V鱈 d畛 v畛 c叩c b畛 t畛
/* This program demonstrate the use of Modifiers in printf() */
#include <stdio.h>
void main(){
printf(The number 555 in various forms:n);
printf(Without any modifier: n);
printf([%d]n,555);
printf(With  modifier :n);
L畉p tr狸nh v畛i ng担n ng畛 C - Session 6 15/ 25
printf(With  modifier :n);
printf([%-d]n,555);
printf(With digit string 10 as modifier :n);
printf([%10d]n,555);
printf(With 0 as modifier : n);
printf([%0d]n,555);
printf(With 0 and digit string 10 as modifiers :n);
printf([%010d]n,555);
printf(With -,0 and digit string 10 as
modifiers:n);
printf([%-010d]n,555);
}
scanf( )scanf( )
 動畛c s畛 d畛ng 畛 nh畉p d畛 li畛u
D畉ng t畛ng qu叩t c畛a hm scanf()
scanf(control string, argument list);
L畉p tr狸nh v畛i ng担n ng畛 C - Session 6 16/ 25
 M達 畛nh d畉ng d湛ng trong hm printf()
c滴ng 動畛c s畛 d畛ng trong hm scanf()
S畛 kh叩c nhau v畛 danh s叩ch 畛i s畛 gi畛aS畛 kh叩c nhau v畛 danh s叩ch 畛i s畛 gi畛a
printf( ) v scanf( )printf( ) v scanf( )
 printf() s畛 d畛ng c叩c bi畉n, h畉ng v c叩c bi畛u th畛c
 scanf() s畛 d畛ng c叩c con tr畛 t畛i bi畉n
Danh s叩ch 畛i s畛 trong scanf() ph畉i theo qui t畉c :
 畛c gi叩 tr畛 vo m畛t bi畉n c坦 ki畛u d畛 li畛u c董 s畛, s畛
L畉p tr狸nh v畛i ng担n ng畛 C - Session 6 17/ 25
 畛c gi叩 tr畛 vo m畛t bi畉n c坦 ki畛u d畛 li畛u c董 s畛, s畛
d畛ng k箪 hi畛u & tr動畛c t棚n bi畉n
 畛c gi叩 tr畛 vo m畛t bi畉n c坦 ki畛u d畛 li畛u d畉n xu畉t,
kh担ng s畛 d畛ng & tr動畛c t棚n bi畉n
 Kh担ng c坦 tu畛 ch畛n %g
 M達 畛nh d畉ng %f v %e l gi畛ng nhau
V鱈 d畛 v畛i hm scanf( )V鱈 d畛 v畛i hm scanf( )
#include <stdio.h>
void main(){
int a;
float d;
char ch, name[40];
L畉p tr狸nh v畛i ng担n ng畛 C - Session 6 18/ 25
char ch, name[40];
printf(Please enter the datan);
scanf(%d %f %c %s,&a,&d,&ch,name);
printf(n The values accepted are:
%d,%f,%c,%s,a, d,ch,name);
}
V湛ng 畛m Nh畉p/Xu畉tV湛ng 畛m Nh畉p/Xu畉t
 動畛c s畛 d畛ng 畛 畛c v ghi c叩c k箪 t畛 ASCII
 M畛t v湛ng 畛m (buffer) l m畛t kh担ng gian l動u
tr畛 t畉m th畛i trong b畛 nh畛 ho畉c tr棚n th畉 i畛u
khi畛n thi畉t b畛
L畉p tr狸nh v畛i ng担n ng畛 C - Session 6 19/ 25
khi畛n thi畉t b畛
 B畛 畛m Nh畉p/Xu畉t c坦 th畛 chia lm :
 Console I/O
 Buffered File I/O
Console I/OConsole I/O
 C叩c hm Console I/O chuy畛n c叩c thao t叩c 畉n
thi畉t b畛 xu畉t nh畉p chu畉n c畛a h畛 th畛ng
 Trong C c叩c hm console I/O 董n gi畉n nh畉t
L畉p tr狸nh v畛i ng担n ng畛 C - Session 6 20/ 25
 Trong C c叩c hm console I/O 董n gi畉n nh畉t
l:
 getchar( ) - 畛c m畛t v ch畛 m畛t k箪 t畛 t畛 bn ph鱈m
 putchar( ) - xu畉t m畛t k箪 t畛 l棚n mn h狸nh
getchar( )getchar( )
 D湛ng 畛c d畛 li畛u nh畉p, m畛t k箪 t畛 t畛 bn
ph鱈m
 C叩c k箪 t畛 畉t trong v湛ng 畛m 畉n khi ng動畛i
L畉p tr狸nh v畛i ng担n ng畛 C - Session 6 21/ 25
 C叩c k箪 t畛 畉t trong v湛ng 畛m 畉n khi ng動畛i
d湛ng g探 ph鱈m enter
 Hm getchar( ) kh担ng c坦 畛i s畛, nh動ng v畉n
ph畉i c坦 c畉p d畉u ngo畉c ( )
V鱈 d畛 hm getchar()V鱈 d畛 hm getchar()
/*Program to demonstrate the use of getchar()*/
#include <stdio.h>
void main()
{
L畉p tr狸nh v畛i ng担n ng畛 C - Session 6 22/ 25
{
char letter;
printf(nPlease enter any character:);
letter = getchar();
printf(nThe character entered by you
is %c, letter);
}
putchar( )putchar( )
 Hm xu畉t k箪 t畛 trong C
 C坦 m畛t 畛i s畛
畛i s畛 c畛a m畛t hm putchar( ) c坦 th畛 l :
L畉p tr狸nh v畛i ng担n ng畛 C - Session 6 23/ 25
畛i s畛 c畛a m畛t hm putchar( ) c坦 th畛 l :
 M畛t h畉ng k箪 t畛 董n
 M畛t m達 escape
 M畛t bi畉n k箪 t畛
V鱈 d畛V鱈 d畛
 putchar(c) : hi畛n th畛 k鱈 t畛 l動u tr畛 trong bi畉n c
ra mn h狸nh
 putchar(A) : hi畛n th畛 A ra mn h狸nh
L畉p tr狸nh v畛i ng担n ng畛 C - Session 6 24/ 25
 putchar(A) : hi畛n th畛 A ra mn h狸nh
 putchar(5) : hi畛n th畛 5 ra mn h狸nh
 putchar(t) : hi畛n th畛 kho畉ng tab
 putchar(n) : con tr畛 xu畛ng d嘆ng ti畉p theo
putchar( )putchar( )
/* This program demonstrates the use of
constants and escape sequences in
putchar()*/
#include <stdio.h>
void main(){
putchar(H); putchar(n);
putchar(t);
L畉p tr狸nh v畛i ng担n ng畛 C - Session 6 25/ 25
putchar(t);
putchar(E); putchar(n);
V鱈 d畛
putchar(t); putchar(t);
putchar(L); putchar(n);
putchar(t); putchar(t); putchar(t);
putchar(L); putchar(n);
putchar(t); putchar(t); putchar(t);
putchar(t);
putchar(O);
}

More Related Content

T4

  • 1. Nh畉p v Xu畉t trong CNh畉p v Xu畉t trong C Input and Output in C Input and Output in C 1 / of 27 Ch動董ng 4
  • 2. M畛c ti棚u c畛a bi h畛cM畛c ti棚u c畛a bi h畛c T狸m hi畛u c叩c hm Nh畉p/Xu畉t c坦 畛nh d畉ng scanf(), printf() L畉p tr狸nh v畛i ng担n ng畛 C - Session 6 2/ 25 S畛 d畛ng c叩c hm Nh畉p/Xu畉t k箪 t畛 getchar(), putchar()
  • 3. Nh畉p/Xu畉t chu畉nNh畉p/Xu畉t chu畉n Th動 vi畛n chu畉n trong C Cung c畉p c叩c hm x畛 l箪 nh畉p v xu畉t chu畉n C叩c hm nh畉p/xu畉t k箪 t畛 v chu畛i L畉p tr狸nh v畛i ng担n ng畛 C - Session 6 3/ 25 C叩c hm nh畉p/xu畉t k箪 t畛 v chu畛i Thi畉t b畛 nh畉p chu畉n th動畛ng l bn ph鱈m. Thi畉t b畛 xu畉t chu畉n th動畛ng l mn h狸nh (console). Nh畉p/xu畉t c坦 th畛 動畛c x畛 l箪 qua file
  • 4. T畉p tin Header <stdio.h>T畉p tin Header <stdio.h> #include <stdio.h> 但y l c但u l畛nh ti畛n x畛 l箪 stdio.h l t畉p tin header (header file) Ch畛a c叩c macro s畛 d畛ng cho nhi畛u hm L畉p tr狸nh v畛i ng担n ng畛 C - Session 6 4/ 25 Ch畛a c叩c macro s畛 d畛ng cho nhi畛u hm nh畉p/xu畉t trong C C叩c macro trong stdio.h gi炭p c叩c hm printf(), scanf(), putchar(), getchar() th畛c thi
  • 5. Nh畉p/Xu畉t c坦 畛nh d畉ngNh畉p/Xu畉t c坦 畛nh d畉ng printf( ) xu畉t d畛 li畛u c坦 畛nh d畉ng scanf( ) nh畉p d畛 li畛u c坦 畛nh d畉ng C叩c 畉c t畉 畛nh d畉ng - d湛ng 畛 畛nh d畉ng L畉p tr狸nh v畛i ng担n ng畛 C - Session 6 5/ 25 C叩c 畉c t畉 畛nh d畉ng - d湛ng 畛 畛nh d畉ng gi叩 tr畛 c叩c bi畉n 動畛c nh畉p vo v in ra
  • 6. printf ( )printf ( ) Hi畛n th畛 d畛 li畛u ra thi畉t b畛 xu畉t chu畉n nh動 mn h狸nh C炭 ph叩p printf ( control string, argument list); Danh s叩ch 畛i s畛 (argument list) ch畛a h畉ng, bi畉n, bi畛u th畛c ho畉c c叩c hm ph但n c叩ch b畛i d畉u ph畉y Ph畉i c坦 m達 畛nh d畉ng t動董ng 畛ng trong control L畉p tr狸nh v畛i ng担n ng畛 C - Session 6 6/ 25 Ph畉i c坦 m達 畛nh d畉ng t動董ng 畛ng trong control string cho m畛i 畛i s畛 trong danh s叩ch C叩c m達 畛nh d畉ng ph畉i kh畛p v畛i danh s叩ch 畛i s畛 v畛 s畛 l動畛ng, ki畛u d畛 li畛u v th畛 t畛. control string lu担n 動畛c 畉t trong d畉u
  • 7. printf ( ) (tt.)printf ( ) (tt.) control string c坦 th畛: 1. C叩c k箪 t畛 vn b畉n : g畛m c叩c k箪 t畛 c坦 th畛 in 動畛c 2. C叩c m達 畛nh d畉ng : L畉p tr狸nh v畛i ng担n ng畛 C - Session 6 7/ 25 b畉t 畉u v畛i k箪 hi畛u % v theo sau l m畛t m達 畛nh d畉ng t動董ng 畛ng cho t畛ng ki畛u d畛 li畛u 3. C叩c k箪 t畛 kh担ng in 動畛c : g畛m tab, blank v new_line
  • 8. M達 畛nh d畉ngM達 畛nh d畉ng 畛nh d畉ng printf() scanf() K箪 t畛 董n (single character) %c %c Chu畛i (string) %s %s S畛 nguy棚n c坦 d畉u (signed integer) %d %d S畛 nguy棚n kh担ng d畉u (unsigned integer) %u %u L畉p tr狸nh v畛i ng担n ng畛 C - Session 6 8/ 25 S畛 nguy棚n kh担ng d畉u (unsigned integer) %u %u S畛 nguy棚n h畛 16 kh担ng d畉u %x %x S畛 nguy棚n h畛 8 kh担ng d畉u %o %o S畛 th畛c d畉u ch畉m 畛ng %f %f ho畉c %e Long float %lf %lf Bi畛u di畛n khoa h畛c (d畉ng l滴y th畛a) c畛a float %e hay %E %f or %e Ki畛u float ( %f hay %e , khi ng畉n h董n) %g %f
  • 9. V鱈 d畛V鱈 d畛 STT L畛nh Chu畛i i畛u khi畛n N畛i dung chu畛i i畛u khi畛n Danh s叩ch 畛i s畛 Gi畉i th鱈ch danh s叩ch 畛i s畛 Hi畛n th畛 tr棚n mn h狸nh 1. printf(%d,300); %d Ch畛 ch畛a m達 畛nh d畉ng 300 H畉ng 300 2. printf(%d,10+5); %d Ch畛 ch畛a l畛nh 畛nh d畉ng 10 + 5 Bi畛u th畛c 15 3. printf(Good Morning Mr. Lee.); Good Morning Mr. Lee. Ch畛 ch畛a c叩c k箪 t畛 vn b畉n R畛ng R畛ng Good Morning Mr. Lee. L畉p tr狸nh v畛i ng担n ng畛 C - Session 6 9/ 25 Lee. Mr. Lee. 4. int count = 100; printf(%d,count); %d Ch畛 ch畛a l畛nh 畛nh d畉ng count Bi畉n 100 5. printf(nhello); nhello Ch畛a k箪 t畛 kh担ng 動畛c in v c叩c k箪 t畛 vn b畉n R畛ng R畛ng hello on a new line 6. #define str Good Apple .. printf(%s,str); %s Ch畛 ch畛a l畛nh 畛nh d畉ng str H畉ng k箪 hi畛u Good Apple 7. .. int count,stud_num; count=0; stud_nim=100; printf(%d %dn,count, stud_num); %d %d Ch畛a l畛nh 畛nh d畉ng v k箪 t畛 kh担ng 動畛c in count, stud_num Hai bi畉n 0 , 100
  • 10. C叩c k箪 t畛 畉c bi畛tC叩c k箪 t畛 畉c bi畛t In ra k箪 t畛 In ra k箪 t畛 L畉p tr狸nh v畛i ng担n ng畛 C - Session 6 10/ 25 In ra k箪 t畛 %% In ra k箪 t畛 %
  • 11. V鱈 d畛 cho hm printf()V鱈 d畛 cho hm printf() Ch動董ng tr狸nh hi畛n th畛 s畛 nguy棚n, th畉p ph但n, k箪 t畛 v chu畛i #include <stdio.h> void main() { L畉p tr狸nh v畛i ng担n ng畛 C - Session 6 11/ 25 { int a = 10; float b = 24.67892345; char ch = A; printf(Integer data = %d, a); printf(Float Data = %f,b); printf(Character = %c,ch); printf(This prints the string); printf(%s,This also prints a string); }
  • 12. B畛 t畛 trong hm printf( )B畛 t畛 trong hm printf( ) 1. B畛 t畛 - D畛 li畛u in ra 動畛c canh l畛 tr叩i, ph畉n t畛 s畉 動畛c in b畉t 畉u t畛 v畛 tr鱈 b棚n tr叩i trong c湛ng c畛a tr動畛ng. L畉p tr狸nh v畛i ng担n ng畛 C - Session 6 12/ 25 2. B畛 t畛 x叩c 畛nh 畛 r畛ng tr動畛ng n S畛 d畛ng cho t畉t c畉 c叩c ki畛u d畛 li畛u. 畛 r畛ng tr動畛ng l m畛t s畛 nguy棚n x叩c 畛nh chi畛u di nh畛 nh畉t ch畛a d畛 li畛u in ra
  • 13. B畛 t畛 trong hm printf( ) (tt.)B畛 t畛 trong hm printf( ) (tt.) 3. 畛 ch鱈nh x叩c .m S畛 d畛ng v畛i ki畛u float, double. Ch畛 ra s畛 ch畛 s畛 sau ph畉n th畉p ph但n 4. B畛 t畛 0 C叩c s畛 0 動畛c th棚m vo d畛 li畛u khi in ra L畉p tr狸nh v畛i ng担n ng畛 C - Session 6 13/ 25 C叩c s畛 0 動畛c th棚m vo d畛 li畛u khi in ra trong tr動畛ng h畛p b畛 t畛 ch畛 畛 r畛ng l畛n (m畉c 畛nh l c叩c kho畉ng tr畉ng) 5. B畛 t畛 l Hi畛n th畛 c叩c 畛i s畛 nguy棚n ki畛u int hay double. M達 畛nh d畉ng t動董ng 畛ng l %ld
  • 14. B畛 t畛 trong hm printf( ) (tt.)B畛 t畛 trong hm printf( ) (tt.) 6. B畛 t畛 h B畛 t畛 ny 動畛c s畛 d畛ng 畛 hi畛n th畛 d畉ng short int. M達 畛nh d畉ng t動董ng 畛ng nh動 l %hd L畉p tr狸nh v畛i ng担n ng畛 C - Session 6 14/ 25 %hd 7. B畛 t畛 * Ch動董ng tr狸nh s畉 x叩c 畛nh 畛 r畛ng 畛 ch畛a d畛 li畛u
  • 15. V鱈 d畛 v畛 c叩c b畛 t畛V鱈 d畛 v畛 c叩c b畛 t畛 /* This program demonstrate the use of Modifiers in printf() */ #include <stdio.h> void main(){ printf(The number 555 in various forms:n); printf(Without any modifier: n); printf([%d]n,555); printf(With modifier :n); L畉p tr狸nh v畛i ng担n ng畛 C - Session 6 15/ 25 printf(With modifier :n); printf([%-d]n,555); printf(With digit string 10 as modifier :n); printf([%10d]n,555); printf(With 0 as modifier : n); printf([%0d]n,555); printf(With 0 and digit string 10 as modifiers :n); printf([%010d]n,555); printf(With -,0 and digit string 10 as modifiers:n); printf([%-010d]n,555); }
  • 16. scanf( )scanf( ) 動畛c s畛 d畛ng 畛 nh畉p d畛 li畛u D畉ng t畛ng qu叩t c畛a hm scanf() scanf(control string, argument list); L畉p tr狸nh v畛i ng担n ng畛 C - Session 6 16/ 25 M達 畛nh d畉ng d湛ng trong hm printf() c滴ng 動畛c s畛 d畛ng trong hm scanf()
  • 17. S畛 kh叩c nhau v畛 danh s叩ch 畛i s畛 gi畛aS畛 kh叩c nhau v畛 danh s叩ch 畛i s畛 gi畛a printf( ) v scanf( )printf( ) v scanf( ) printf() s畛 d畛ng c叩c bi畉n, h畉ng v c叩c bi畛u th畛c scanf() s畛 d畛ng c叩c con tr畛 t畛i bi畉n Danh s叩ch 畛i s畛 trong scanf() ph畉i theo qui t畉c : 畛c gi叩 tr畛 vo m畛t bi畉n c坦 ki畛u d畛 li畛u c董 s畛, s畛 L畉p tr狸nh v畛i ng担n ng畛 C - Session 6 17/ 25 畛c gi叩 tr畛 vo m畛t bi畉n c坦 ki畛u d畛 li畛u c董 s畛, s畛 d畛ng k箪 hi畛u & tr動畛c t棚n bi畉n 畛c gi叩 tr畛 vo m畛t bi畉n c坦 ki畛u d畛 li畛u d畉n xu畉t, kh担ng s畛 d畛ng & tr動畛c t棚n bi畉n Kh担ng c坦 tu畛 ch畛n %g M達 畛nh d畉ng %f v %e l gi畛ng nhau
  • 18. V鱈 d畛 v畛i hm scanf( )V鱈 d畛 v畛i hm scanf( ) #include <stdio.h> void main(){ int a; float d; char ch, name[40]; L畉p tr狸nh v畛i ng担n ng畛 C - Session 6 18/ 25 char ch, name[40]; printf(Please enter the datan); scanf(%d %f %c %s,&a,&d,&ch,name); printf(n The values accepted are: %d,%f,%c,%s,a, d,ch,name); }
  • 19. V湛ng 畛m Nh畉p/Xu畉tV湛ng 畛m Nh畉p/Xu畉t 動畛c s畛 d畛ng 畛 畛c v ghi c叩c k箪 t畛 ASCII M畛t v湛ng 畛m (buffer) l m畛t kh担ng gian l動u tr畛 t畉m th畛i trong b畛 nh畛 ho畉c tr棚n th畉 i畛u khi畛n thi畉t b畛 L畉p tr狸nh v畛i ng担n ng畛 C - Session 6 19/ 25 khi畛n thi畉t b畛 B畛 畛m Nh畉p/Xu畉t c坦 th畛 chia lm : Console I/O Buffered File I/O
  • 20. Console I/OConsole I/O C叩c hm Console I/O chuy畛n c叩c thao t叩c 畉n thi畉t b畛 xu畉t nh畉p chu畉n c畛a h畛 th畛ng Trong C c叩c hm console I/O 董n gi畉n nh畉t L畉p tr狸nh v畛i ng担n ng畛 C - Session 6 20/ 25 Trong C c叩c hm console I/O 董n gi畉n nh畉t l: getchar( ) - 畛c m畛t v ch畛 m畛t k箪 t畛 t畛 bn ph鱈m putchar( ) - xu畉t m畛t k箪 t畛 l棚n mn h狸nh
  • 21. getchar( )getchar( ) D湛ng 畛c d畛 li畛u nh畉p, m畛t k箪 t畛 t畛 bn ph鱈m C叩c k箪 t畛 畉t trong v湛ng 畛m 畉n khi ng動畛i L畉p tr狸nh v畛i ng担n ng畛 C - Session 6 21/ 25 C叩c k箪 t畛 畉t trong v湛ng 畛m 畉n khi ng動畛i d湛ng g探 ph鱈m enter Hm getchar( ) kh担ng c坦 畛i s畛, nh動ng v畉n ph畉i c坦 c畉p d畉u ngo畉c ( )
  • 22. V鱈 d畛 hm getchar()V鱈 d畛 hm getchar() /*Program to demonstrate the use of getchar()*/ #include <stdio.h> void main() { L畉p tr狸nh v畛i ng担n ng畛 C - Session 6 22/ 25 { char letter; printf(nPlease enter any character:); letter = getchar(); printf(nThe character entered by you is %c, letter); }
  • 23. putchar( )putchar( ) Hm xu畉t k箪 t畛 trong C C坦 m畛t 畛i s畛 畛i s畛 c畛a m畛t hm putchar( ) c坦 th畛 l : L畉p tr狸nh v畛i ng担n ng畛 C - Session 6 23/ 25 畛i s畛 c畛a m畛t hm putchar( ) c坦 th畛 l : M畛t h畉ng k箪 t畛 董n M畛t m達 escape M畛t bi畉n k箪 t畛
  • 24. V鱈 d畛V鱈 d畛 putchar(c) : hi畛n th畛 k鱈 t畛 l動u tr畛 trong bi畉n c ra mn h狸nh putchar(A) : hi畛n th畛 A ra mn h狸nh L畉p tr狸nh v畛i ng担n ng畛 C - Session 6 24/ 25 putchar(A) : hi畛n th畛 A ra mn h狸nh putchar(5) : hi畛n th畛 5 ra mn h狸nh putchar(t) : hi畛n th畛 kho畉ng tab putchar(n) : con tr畛 xu畛ng d嘆ng ti畉p theo
  • 25. putchar( )putchar( ) /* This program demonstrates the use of constants and escape sequences in putchar()*/ #include <stdio.h> void main(){ putchar(H); putchar(n); putchar(t); L畉p tr狸nh v畛i ng担n ng畛 C - Session 6 25/ 25 putchar(t); putchar(E); putchar(n); V鱈 d畛 putchar(t); putchar(t); putchar(L); putchar(n); putchar(t); putchar(t); putchar(t); putchar(L); putchar(n); putchar(t); putchar(t); putchar(t); putchar(t); putchar(O); }