>> DAVID J. Malan: Да предположим, че бих искал за изпълнение на програма, която подканва
потребителя за низ и след това продължава да се възползва техният принос,
Конвертиране на всички малки букви че те да въвеждате главни букви.
Е, да вървим напред и да изпълнението на тази програма.
>> Нека първо да включва cs50.h последвано от включват stdio.h.
И така, че ние можем да използваме strlen, нека да включва string.h.
>> Нека следващия декларира главната като Int основната нищожен и нека сега да пристъпи към подкани
потребителя за низ.
ФОРМАТ, нека да ги подтикне за някои вход.
Сега нека да декларират низ -
ние ще го наречем е -
и се съхранява в него, в резултат на разговори функцията GetString CS50 библиотека.
>> Нека сега да пристъпи към обхождане на всеки от героите в S, капитализиране
всички малки букви, които виждаме.
За ПНА, аз добивам 0.
Нека също така декларира, че е п равно на дължината на низ ите, така че ние можем да
обхождане от I до този ñ, дължина на S, и на всеки
итерация нарастване аз.
>> И тогава вътре в този цикъл, нека първата проверка е текущата писмото -
на аз-ти писмото на S, така да се каже -
малка буква.
Ако и скоба и е по-голяма от или равна на малки букви а, и това е по-малко
от или равна на малки Z -
Сега, ако искаме да конвертирате малки букви писмо до главни букви, припомни първо, че
в ASCII малки букви а е от 97 и главна А е 65.
Междувременно, с малки букви б е 98, и главна B е 66.
>> Ако ние продължаваме да разгледаме този модел, ще видим, че малката
букви винаги са 32-високи стойности от главни букви.
Така че, ако искаме да се превърне в гол от малки букви да е главна буква, тя трябва да
достатъчно е, наистина, да се изважда 32 от вход на потребителя.
Или по-общо, просто се изважда, че разлика между малки букви А и
капитал A.
>> Как да изразим това?
Е, нека да го направим в код.
ФОРМАТ, цитирам, край на цитата "% C" за печат текущия символ, последвано от
печат каквото е в S скоба и минус в резултат на това по-малки букви
минус главни букви A и запетая.
С други думи, това вмъкнат изразяване, малко по-голям минус A, е
Ще се върнете към нас на края на деня 32.
Но не е нужно да се помни, че това е 32.
Мога да позволи на компютъра да разбера каква е разликата между малки букви
А и А е капитал.
>> Междувременно, след като знам, че тази разлика, Мога да го изваждате от S
скоба и, която ще вземе това, което е вероятно малка буква на
по-ниска стойност, а именно стойността, която се съпоставя върху главна еквивалент.
Нека сега спаси, изготвят, и стартирате тази програма.
Уверете се възползва точка наклонена черта капитализират.
И моят принос ще бъде здравей.
И там имаме, здравей.
>> Сега ми бързо, разбира се, е малко грозно, защото сме
пропуснат един бит на печат.
И нека да се върнем и да се добави, че.
В дъното на тази програма, Аз съм много просто, и до голяма степен за
естетическа цел, ще добавим ФОРМАТ, цитат, край на цитата наклонена черта п.
Нека запазете този файл, прекомпилирате, разясняване.
>> Уверете се възползва, точкова наклонена черта се възползва.
Отново, за вход ще осигури "здравей" във всички малки букви, а сега удари Enter,
и "здравей", много по-чисто отпечатани.