1
00:00:00,000 --> 00:00:00,720

2
00:00:00,720 --> 00:00:03,190
>> David J. Malan dink dat Ek wil graag
'n program wat vra om te implementeer

3
00:00:03,190 --> 00:00:06,650
die gebruiker vir 'n string en dan voortgaan
hul insette te kapitaliseer,

4
00:00:06,650 --> 00:00:09,790
omskakeling enige klein letters
dat hulle tik hoofletters.

5
00:00:09,790 --> 00:00:11,770
Wel, laat ons gaan voort en
implementeer die program.

6
00:00:11,770 --> 00:00:18,760
>> Kom ons kyk eers sluit cs50.h gevolg
deur sluit stdio.h.

7
00:00:18,760 --> 00:00:23,990
En sodat ons kan StrLen gebruik,
laat se sluit string.h.

8
00:00:23,990 --> 00:00:29,860
>> Kom ons volgende verklaar vernaamste as int belangrikste leemte
en laat ons nou voortgaan om vinnig

9
00:00:29,860 --> 00:00:31,600
die gebruiker vir 'n string.

10
00:00:31,600 --> 00:00:34,840
Printf, laat ons gevra om hulle
vir 'n paar insette.

11
00:00:34,840 --> 00:00:36,460
Laat se verklaar 'n string nou -

12
00:00:36,460 --> 00:00:37,630
ons sal noem dit is -

13
00:00:37,630 --> 00:00:44,010
en bêre in dit die gevolg van die roeping
die cs50 biblioteek funksie GetString.

14
00:00:44,010 --> 00:00:48,850
>> Kom ons nou voortgaan om Itereer oor elke
van die karakters in s, kapitaliseer

15
00:00:48,850 --> 00:00:50,650
enige klein letters wat ons sien.

16
00:00:50,650 --> 00:00:53,630
Vir int, ek kry 0.

17
00:00:53,630 --> 00:00:58,780
Kom ons verklaar ook n as gelyk te
die string lengte van s, sodat ons kan

18
00:00:58,780 --> 00:01:03,590
Itereer van i tot n, die
lengte van s, en op elke

19
00:01:03,590 --> 00:01:05,760
iterasie inkrement i.

20
00:01:05,760 --> 00:01:09,970
>> En dan binnekant van die loop, laat
eerste tjek is die huidige brief -

21
00:01:09,970 --> 00:01:12,270
die i-de letter van s, om so te praat -

22
00:01:12,270 --> 00:01:14,170
'n klein letter.

23
00:01:14,170 --> 00:01:23,090
As s bracket ek is groter as of gelyk
'n te klein letters, en dit is minder

24
00:01:23,090 --> 00:01:26,900
as of gelyk aan klein Z -

25
00:01:26,900 --> 00:01:30,860
Nou as ons wil 'n klein om te skakel
brief aan hoofletters, onthou dat eerste

26
00:01:30,860 --> 00:01:35,810
in ASCII 'n klein 'n 97
en 'n hoofletters A is 65.

27
00:01:35,810 --> 00:01:41,020
Intussen het 'n klein b is 98,
en 'n hoof-B is 66.

28
00:01:41,020 --> 00:01:44,180
>> As ons voortgaan om te kyk na die patroon,
ons sal sien dat die klein

29
00:01:44,180 --> 00:01:49,240
briewe is altyd 32 waardes hoër
as die hoofletters.

30
00:01:49,240 --> 00:01:53,490
So as ons wil om te skakel van klein
na 'n hoofletter, dit moet

31
00:01:53,490 --> 00:01:57,210
voldoende is, kan regtig nie, af te trek
32 van die gebruiker se insette.

32
00:01:57,210 --> 00:02:01,330
Of meer in die algemeen, net trek wat
verskil tussen 'n klein 'n en 'n

33
00:02:01,330 --> 00:02:02,310
kapitaal A.

34
00:02:02,310 --> 00:02:03,410
>> Hoe om dit te druk?

35
00:02:03,410 --> 00:02:04,640
Wel, kom ons doen dit in die kode.

36
00:02:04,640 --> 00:02:09,960
Printf, quote, unquote "% c" om te druk
die huidige karakter, gevolg deur

37
00:02:09,960 --> 00:02:18,500
druk net die in s bracket i minus
die gevolg van 'n klein doen

38
00:02:18,500 --> 00:02:22,660
minus hoofletters 'n Kommapunt.

39
00:02:22,660 --> 00:02:27,010
Met ander woorde, die hakies
uitdrukking, min om 'n minus groot A, is

40
00:02:27,010 --> 00:02:29,360
gaan terug na ons by
die einde van die dag 32.

41
00:02:29,360 --> 00:02:31,230
Maar ek het nie om te onthou
dat dit 32.

42
00:02:31,230 --> 00:02:34,150
Ek kan nie toelaat dat die rekenaar om uit te vind
wat die verskil tussen klein

43
00:02:34,150 --> 00:02:35,990
A en kapitaal A is.

44
00:02:35,990 --> 00:02:39,610
>> Intussen, as ek weet dat verskil,
Ek kan dit aftrek van s

45
00:02:39,610 --> 00:02:43,710
bracket ek, wat sal neem wat is
vermoedelik 'n klein brief aan 'n

46
00:02:43,710 --> 00:02:48,100
laer waarde, naamlik 'n waarde wat kaarte
op 'n hoofletters ekwivalent.

47
00:02:48,100 --> 00:02:51,240
Kom ons nou ook red, saamstel,
en die uitvoering van hierdie program.

48
00:02:51,240 --> 00:02:57,760
Maak kapitaliseer dot streep gekapitaliseer.

49
00:02:57,760 --> 00:03:01,290
En my insette sal wees hallo.

50
00:03:01,290 --> 00:03:02,920
En daar het ons, hallo.

51
00:03:02,920 --> 00:03:05,570
>> Nou is my vinnige, weliswaar, is
'n bietjie lelik, want ons het

52
00:03:05,570 --> 00:03:07,810
weggelaat 'n bietjie van die druk.

53
00:03:07,810 --> 00:03:09,370
En laat ons teruggaan en byvoeg dat.

54
00:03:09,370 --> 00:03:12,890
Op die heel onderkant van hierdie program,
Ek is baie eenvoudig, en grootliks vir

55
00:03:12,890 --> 00:03:18,440
estetiese doel, gaan printf te voeg,
quote, unquote backslash n.

56
00:03:18,440 --> 00:03:22,330
Kom ons weer stoor hierdie lêer,
heropstel, tik.

57
00:03:22,330 --> 00:03:28,090
>> Maak kapitaliseer, dot streep kapitaliseer.

58
00:03:28,090 --> 00:03:32,540
Weereens, vir die insette wat ek sal voorsien "hallo"
in al laer geval en nou druk Enter,

59
00:03:32,540 --> 00:03:34,550
en "hallo", baie meer skoon gedruk.

60
00:03:34,550 --> 00:03:36,432