1 00:00:00,000 --> 00:00:00,720 2 00:00:00,720 --> 00:00:03,190 >> David J. Malan: Recimo da sam bih provesti program koji potiče 3 00:00:03,190 --> 00:00:06,650 Korisnik za niz a zatim nastavlja kapitalizirati svoj ulaz, 4 00:00:06,650 --> 00:00:09,790 pretvaranje bilo mala slova da se upišete u velika slova. 5 00:00:09,790 --> 00:00:11,770 Pa, idemo naprijed i provoditi taj program. 6 00:00:11,770 --> 00:00:18,760 >> Neka prvi su cs50.h slijedi by uključuju stdio.h. 7 00:00:18,760 --> 00:00:23,990 I tako da možemo koristiti strlen, neka su string.h. 8 00:00:23,990 --> 00:00:29,860 >> Idemo naprijed proglasiti glavni kao int main prazninu i neka je sada nastaviti da se potakne 9 00:00:29,860 --> 00:00:31,600 Korisnik za niz. 10 00:00:31,600 --> 00:00:34,840 Printf, idemo ih potaknuti za neki ulaz. 11 00:00:34,840 --> 00:00:36,460 Sada ćemo proglasiti niz - 12 00:00:36,460 --> 00:00:37,630 ćemo nazvati to je - 13 00:00:37,630 --> 00:00:44,010 i pohraniti u njemu rezultat pozivom CS50 knjižnica funkcija GetString. 14 00:00:44,010 --> 00:00:48,850 >> Idemo sada nastaviti da ponoviti tijekom svakog od likova u sekundi, uz iskorištavanje 15 00:00:48,850 --> 00:00:50,650 bilo mala slova koje vidimo. 16 00:00:50,650 --> 00:00:53,630 Za int, ja dobiti 0.. 17 00:00:53,630 --> 00:00:58,780 Idemo također izjavljujem n da bude jednak duljine od s. tako da možemo 18 00:00:58,780 --> 00:01:03,590 ponoviti od i do n, duljina S, i svaki 19 00:01:03,590 --> 00:01:05,760 iteracija prirast ja. 20 00:01:05,760 --> 00:01:09,970 >> I onda unutar ove petlje, neka je Prva provjera je trenutna pismo - 21 00:01:09,970 --> 00:01:12,270 i-ti pismo s, da tako kažemo - 22 00:01:12,270 --> 00:01:14,170 malo slovo. 23 00:01:14,170 --> 00:01:23,090 Ako je sam nosač je veća od ili jednaka u mala slova, a to je manje 24 00:01:23,090 --> 00:01:26,900 od ili jednak malih slova Z - 25 00:01:26,900 --> 00:01:30,860 Sada, ako želimo pretvoriti malim slovima Pismo u velika slova, podsjetiti da je prvi 26 00:01:30,860 --> 00:01:35,810 u ASCII mala je 97 i veliko je 65. 27 00:01:35,810 --> 00:01:41,020 U međuvremenu, mala b je 98, i veliko B je 66. 28 00:01:41,020 --> 00:01:44,180 >> Ako ćemo i dalje gledati na taj uzorak, vidjet ćemo da je mala 29 00:01:44,180 --> 00:01:49,240 Slova su uvijek 32 Vrijednosti veće od velikih slova. 30 00:01:49,240 --> 00:01:53,490 Dakle, ako želimo pretvoriti iz mala slova u velika slova, što bi trebalo 31 00:01:53,490 --> 00:01:57,210 Dosta je, doista, za oduzimanje 32 iz korisničkog unosa. 32 00:01:57,210 --> 00:02:01,330 Ili općenitije, samo oduzmite da Razlika između malim slovom A i A 33 00:02:01,330 --> 00:02:02,310 kapitala A. 34 00:02:02,310 --> 00:02:03,410 >> Kako izraziti da? 35 00:02:03,410 --> 00:02:04,640 Pa, učinimo to u kodu. 36 00:02:04,640 --> 00:02:09,960 Printf, citat, završiti citat "% c" za ispis trenutna lik, nakon čega slijedi 37 00:02:09,960 --> 00:02:18,500 tisak god je u e bracket i. minusu Rezultat radi malim slovom A 38 00:02:18,500 --> 00:02:22,660 minus velika slova zarezom. 39 00:02:22,660 --> 00:02:27,010 Drugim riječima, to zagrade izraz, mali minus velika, je 40 00:02:27,010 --> 00:02:29,360 će nam se vratiti u Kraj je dana 32. 41 00:02:29,360 --> 00:02:31,230 Ali ja ne moram se sjetiti da je 32. 42 00:02:31,230 --> 00:02:34,150 Ja mogu dopustiti računalo shvatiti koja je razlika između malih 43 00:02:34,150 --> 00:02:35,990 a kapital je. 44 00:02:35,990 --> 00:02:39,610 >> U međuvremenu, nakon što znam da je razlika, Ja to mogu oduzeti od s. 45 00:02:39,610 --> 00:02:43,710 Nosač ja, koji će uzeti ono što je vjerojatno malo slovo na 46 00:02:43,710 --> 00:02:48,100 niža vrijednost, to jest vrijednost koja preslikava na nalaziti veliko ekvivalenta. 47 00:02:48,100 --> 00:02:51,240 Idemo sada spasiti, sastaviti, i pokrenuti ovaj program. 48 00:02:51,240 --> 00:02:57,760 Provjerite kapitalizirati dot crtu kapitaliziraju. 49 00:02:57,760 --> 00:03:01,290 I moj ulaz će biti zdravo. 50 00:03:01,290 --> 00:03:02,920 I tu smo, bok. 51 00:03:02,920 --> 00:03:05,570 >> Sada mi je brz, doduše, je malo ružno, jer smo 52 00:03:05,570 --> 00:03:07,810 izostavljen jedan bit tisak. 53 00:03:07,810 --> 00:03:09,370 I idemo natrag i dodati da. 54 00:03:09,370 --> 00:03:12,890 Na samom dnu ovog programa, Ja sam vrlo jednostavno, i uglavnom za 55 00:03:12,890 --> 00:03:18,440 estetske svrhe, će dodati printf, citat, završiti citat backslash n. 56 00:03:18,440 --> 00:03:22,330 Idemo resave ovu sliku, kompilirati, reprizu. 57 00:03:22,330 --> 00:03:28,090 >> Napravite kapitalizirati, dot slash kapitalizirati. 58 00:03:28,090 --> 00:03:32,540 Opet, za ulaz ću dati "Hello" u svim malim slovima, a sada hit Enter, 59 00:03:32,540 --> 00:03:34,550 i "zdravo", puno više čisto tiskana. 60 00:03:34,550 --> 00:03:36,432