1
00:00:00,000 --> 00:00:00,340

2
00:00:00,340 --> 00:00:02,690
>> DAVID馬蘭:假設我們想編寫
提示用戶的程序

3
00:00:02,690 --> 00:00:05,100
為一個字符串,然後以大寫字母
該字符串。

4
00:00:05,100 --> 00:00:09,000
好吧,讓我們開始與一些熟悉的
代碼中聲明一個稱為S字符串,

5
00:00:09,000 --> 00:00:11,380
分配給它的回報
GetString的價值。

6
00:00:11,380 --> 00:00:14,910
而且,我們現在進行遍歷
在此字符串中的字符。

7
00:00:14,910 --> 00:00:16,000
那麼,如何做到這一點?

8
00:00:16,000 --> 00:00:19,350
事實證明,一個字符串只是一個
字符序列,但更

9
00:00:19,350 --> 00:00:23,320
正確,字符串是一個數組
字符,這意味著我們可以使用

10
00:00:23,320 --> 00:00:27,590
方括號來索引
在個人的字符串,並得到

11
00:00:27,590 --> 00:00:28,680
字符。

12
00:00:28,680 --> 00:00:30,980
>> 換句話說,我們可以
做到以下幾點。

13
00:00:30,980 --> 00:00:36,730
對於int,我得到0,n變,
說,s的長度,用

14
00:00:36,730 --> 00:00:37,530
我們的函數[?攪?]

15
00:00:37,530 --> 00:00:38,630
[?行,?]

16
00:00:38,630 --> 00:00:40,450
i小於N I + +。

17
00:00:40,450 --> 00:00:45,290
換句話說,在該循環中,我們
將遍歷所有n個字母

18
00:00:45,290 --> 00:00:46,670
在字符串s中。

19
00:00:46,670 --> 00:00:51,680
並在這個循環中,我要
檢查,如果s中的第i個字符

20
00:00:51,680 --> 00:00:57,630
大於或等於小寫a,
與第i個字符是小於或

21
00:00:57,630 --> 00:01:02,370
等於一個小寫的c,那麼我想
請把握這封信。

22
00:01:02,370 --> 00:01:08,030
換句話說,我想打印出%C
作為佔位符,並以對中

23
00:01:08,030 --> 00:01:11,120
這個佔位符s支架I。

24
00:01:11,120 --> 00:01:14,390
>> 但後​​來我需要轉換
s支架I為大寫。

25
00:01:14,390 --> 00:01:18,930
要做到這一點,我可以簡單地減
任何偏差在

26
00:01:18,930 --> 00:01:24,120
小寫和大寫字母A好,我
其實都記得,大寫字母A是

27
00:01:24,120 --> 00:01:27,160
65在ASCII和小寫a是97。

28
00:01:27,160 --> 00:01:29,210
這樣的差異在技術上是32。

29
00:01:29,210 --> 00:01:31,620
所以,我只能硬編碼32在這裡。

30
00:01:31,620 --> 00:01:33,870
但我不一定
記住這些數字。

31
00:01:33,870 --> 00:01:37,250
>> 況且,如果他們
電腦有什麼不同?

32
00:01:37,250 --> 00:01:38,520
最有可能他們不是。

33
00:01:38,520 --> 00:01:42,460
但問題仍然是,我仍然可以
概括地說,算術表達式

34
00:01:42,460 --> 00:01:46,550
如剛剛任何的區別是
一個小寫的a和大寫的A之間

35
00:01:46,550 --> 00:01:50,880
是我想從減去了
這個特殊的小寫字母。

36
00:01:50,880 --> 00:01:54,500
>> 現在,如果該特定信
是不是小寫,我只是

37
00:01:54,500 --> 00:01:56,620
想打印出來。

38
00:01:56,620 --> 00:02:01,110
printf的,%C作為我的佔位符,
s支架I。

39
00:02:01,110 --> 00:02:05,150
這個程序的底部,讓我們
簡單地打印出換行,這樣我

40
00:02:05,150 --> 00:02:07,520
提示出現在一個新的
行自身。

41
00:02:07,520 --> 00:02:11,540
>> 現在讓我們來編譯這個程序
用make capitalize0。

42
00:02:11,540 --> 00:02:13,900
讓我們一起capitalize0運行它。

43
00:02:13,900 --> 00:02:17,190
並讓我們鍵入一個詞像
你好全部用小寫。

44
00:02:17,190 --> 00:02:19,960
我在大寫回來HELLO
如預期。

45
00:02:19,960 --> 00:02:25,210
但是,讓我們嘗試一種更考驗,這時候
用我自己的名字,D-A-V-I-D,但與

46
00:02:25,210 --> 00:02:28,170
第一D資本化,只是在
萬一我搞砸了的東西

47
00:02:28,170 --> 00:02:29,430
與第一個字符。

48
00:02:29,430 --> 00:02:34,250
以大寫字母輸入和D-A-V-I-D
打印為好。

49
00:02:34,250 --> 00:02:36,873