1 00:00:00,000 --> 00:00:00,720 2 00:00:00,720 --> 00:00:03,190 >> David J. Malan: Tarkime, kad aš norėčiau įgyvendinti programą, kuri verčia 3 00:00:03,190 --> 00:00:06,650 styginių vartotojas ir tada pajamos pasinaudoti savo indėlį, 4 00:00:06,650 --> 00:00:09,790 Konvertavimas bet kokį mažąsias raides kad jie tipo su didžiosiomis raidėmis. 5 00:00:09,790 --> 00:00:11,770 Na, eikime į priekį ir šiai programai įgyvendinti. 6 00:00:11,770 --> 00:00:18,760 >> Tegul pirmasis apima cs50.h po iki pat stdio.h. 7 00:00:18,760 --> 00:00:23,990 Ir todėl, kad mes galime naudoti strlen, tegul apima string.h. 8 00:00:23,990 --> 00:00:29,860 >> Tegul kitas paskelbti pagrindinį kaip int main negaliojančiu ir tegul dabar pereiti prie greitai 9 00:00:29,860 --> 00:00:31,600 styginių vartotojas. 10 00:00:31,600 --> 00:00:34,840 Printf, galime paskatinti juos kai įėjimo. 11 00:00:34,840 --> 00:00:36,460 Dabar galime paskelbti eilutę - 12 00:00:36,460 --> 00:00:37,630 mes tai vadiname s - 13 00:00:37,630 --> 00:00:44,010 ir laikyti jį, iš kurios skambinama rezultatą CS50 biblioteka funkcija GetString. 14 00:00:44,010 --> 00:00:48,850 >> Leiskite dabar pereiti prie kartoti per kiekvieną iš s, išnaudodamas simbolių 15 00:00:48,850 --> 00:00:50,650 bet mažosiomis raidėmis, kad mes matome. 16 00:00:50,650 --> 00:00:53,630 Dėl int, gaunu 0. 17 00:00:53,630 --> 00:00:58,780 Tegul deklaruoja n prilygino string ilgis s, kad galėtume 18 00:00:58,780 --> 00:01:03,590 kartoti nuo i iki n, ilgis s, ir kiekvienas 19 00:01:03,590 --> 00:01:05,760 iteracija prieaugis i. 20 00:01:05,760 --> 00:01:09,970 >> Ir tada viduje šios linijos, tegul Pirmasis patikrinimas yra dabartinis raštas - 21 00:01:09,970 --> 00:01:12,270 i-asis laiškas s, taip sakant - 22 00:01:12,270 --> 00:01:14,170 mažoji raidė. 23 00:01:14,170 --> 00:01:23,090 Jei ai laikiklis i yra didesnis nei arba lygus mažosiomis raidėmis, o tai yra mažiau 24 00:01:23,090 --> 00:01:26,900 nei arba lygus mažosiomis z - 25 00:01:26,900 --> 00:01:30,860 Dabar, jei mes norime konvertuoti mažosiomis laišką didžiąsias, prisimenu, pirma, kad 26 00:01:30,860 --> 00:01:35,810 ASCII mažosiomis raidėmis 97 ir didžiosiomis raidėmis 65. 27 00:01:35,810 --> 00:01:41,020 Tuo tarpu mažoji b yra 98, ir didžiosiomis raidėmis B 66. 28 00:01:41,020 --> 00:01:44,180 >> Jei mes ir toliau pažvelgti į tą modelį, matysime, kad mažoji 29 00:01:44,180 --> 00:01:49,240 raidės yra visada 32 vertės didesnės nei didžiosiomis raidėmis. 30 00:01:49,240 --> 00:01:53,490 Taigi, jei norime konvertuoti iš mažosios didžiosiomis, ji turėtų 31 00:01:53,490 --> 00:01:57,210 pakanka, tikrai, atimti 32 iš vartotojo įvesties. 32 00:01:57,210 --> 00:02:01,330 Arba apskritai, tiesiog atimti, kad skirtumas tarp mažosiomis a ir a 33 00:02:01,330 --> 00:02:02,310 kapitalas A. 34 00:02:02,310 --> 00:02:03,410 >> Kaip išreikšti tai? 35 00:02:03,410 --> 00:02:04,640 Na, galime daryti kodą. 36 00:02:04,640 --> 00:02:09,960 Printf, citata, citatos "% c" spausdinti dabartinis simbolis, o po to 37 00:02:09,960 --> 00:02:18,500 spausdinimo visada kas s laikiklis i minus daryti mažosiomis rezultatas 38 00:02:18,500 --> 00:02:22,660 atėmus didžiąsias kabliataškiu. 39 00:02:22,660 --> 00:02:27,010 Kitaip tariant, tai daug įterptinių sakinių išraiška, tiek minusas didelis, yra 40 00:02:27,010 --> 00:02:29,360 ketina grįžti į mums dienos 32 pabaigoje. 41 00:02:29,360 --> 00:02:31,230 Bet aš neturiu prisiminti kad tai 32. 42 00:02:31,230 --> 00:02:34,150 Galiu leisti kompiuteris išsiaiškinti kas tarp mažosiomis skirtumas 43 00:02:34,150 --> 00:02:35,990 ir kapitalas yra. 44 00:02:35,990 --> 00:02:39,610 >> Tuo tarpu, kai aš žinau, kad skirtumas, Galiu atimti iš s 45 00:02:39,610 --> 00:02:43,710 laikiklis i, kurios vyks kas tikriausiai mažoji raidė į 46 00:02:43,710 --> 00:02:48,100 mažesnė vertė, ty vertė, kad žemėlapiai ant iš didžiosios ekvivalentu. 47 00:02:48,100 --> 00:02:51,240 Leiskite dabar įrašyti, kaupti, ir paleisti šią programą. 48 00:02:51,240 --> 00:02:57,760 Padaryti pasinaudoti dot velniop kapitalizuojamos. 49 00:02:57,760 --> 00:03:01,290 Ir mano indėlis bus labas. 50 00:03:01,290 --> 00:03:02,920 Ir mes turime, labas. 51 00:03:02,920 --> 00:03:05,570 >> Dabar mano raginimas, žinoma, yra tiek negraži, nes mes 52 00:03:05,570 --> 00:03:07,810 praleisti vieną tiek spauda. 53 00:03:07,810 --> 00:03:09,370 Ir tegul grįžti ir pridėti, kad. 54 00:03:09,370 --> 00:03:12,890 Pačioje apačioje šią programą, Aš labai paprastai, ir daugiausia dėl 55 00:03:12,890 --> 00:03:18,440 estetinis tikslas, ketiname pridėti printf, citata, citatos Backslash n. 56 00:03:18,440 --> 00:03:22,330 Leiskite išsaugokite šį failą, perkompiliuoti, pakartotas. 57 00:03:22,330 --> 00:03:28,090 >> Padaryti kapitalizuoti, taškas velniop pasinaudoti. 58 00:03:28,090 --> 00:03:32,540 Vėlgi, įvesties aš suteikti "labas" visose mažosiomis ir dabar paspausti Enter 59 00:03:32,540 --> 00:03:34,550 ir "labas", daug švariai spausdinami. 60 00:03:34,550 --> 00:03:36,432