剛才描述中的輸入函數和之前使用過的輸出函數printf參數類似,它們都是標準庫中所聲明的,都位于頭文件stdio.h中,但輸入函數對應的名稱為scanf,它可以完成多種數據的輸入功能。下面的代碼表示輸入一個整數值
scanf(“%d”, &year);
這行代碼含有兩個參數,第一個參數為格式化字符串,與printf格式化字符串相同,它同樣也支持轉換符(conversion specifier),對于不同類型數值,采用不同的轉換符,比如本例中對于整型數值來說,采用了%d轉換符;如果是字符串數據,那么對應的轉換符為%s(后續教程會進行演示)。第二個參數為一個整型變量year,這個變量前面的符號&表示的含義為變量year所對應的內存地址,而不是變量本身(在后續指針教程會詳細介紹地址操作符),這條語句的含義就是:從計算機輸入設備(鍵盤)讀取一個整型數值,并將其存放到整型變量year所對應的內存地址位置。
scanf函數不僅僅可以輸入一個整數,它還可以輸入多個整數,比如輸入格式為“年/月/日”的內容,也可記作yyyy/mm/dd,其代碼寫法為:
scanf(“%d/%d/%d”, &year, &month,&day);
這行代碼同時需要輸入三個整數,整數之間使用斜線進行分割。我們通過代碼來演示下scanf函數輸入整數的用法,并將輸入的內容再輸出至屏幕上。
圖1
代碼第6行定義了三個整型變量,這三個變量兩兩之間使用逗號進行分割,類型都是int,也可以使用獨立的定義,每行只定義一個整型變量,如下代碼也是可以合法的。
int year;
int month;
int day;
每一行表示一個語句,以分號結束,而不是逗號。
在圖1代碼的第7行,程序首先輸出提示語,給出用戶輸入日期的格式,需要注意的是printf函數中的日期格式應該與第8行代碼中的輸入格式的日期樣式一致,都是yyyy/mm/dd的樣式,否則提示和實際輸入內容會對用戶造成困惑。
第8行代碼中的scanf函數第一個參數給出了實際輸入的日期樣式,用戶在輸入日期時,第一個參數為表示整數的年值,之后跟一個半角斜線字符/,再后面是整數的月份值,之后再跟一個半角斜線字符/,最后是整數的日值,輸入完成之后按下回車鍵。這樣就使用scanf函數完成了特定樣式yyyy/mm/dd樣式的日期輸入。第9行代碼對剛剛輸入的內容進行了輸出顯示,為了保持日期樣式的一致性,輸出格式依舊采用yyyy/mm/dd的日期格式。
圖2
至此,我們完成了計算機輸入整數的功能,字符串輸入和整型數值有所不同,在數組教程進行演示。
注:圖1代碼第一行是忽略了安全警告,因為微軟視scanf為不安全函數,在代碼中已經給出了3級警告,默認情況下是會導致構建失敗,詳見鏈接:編譯器警告 (級別 3) C4996 | Microsoft Docs
面有一篇文章曾談到手機中文輸入的問題,如下圖所示。
實際上,智能手機輸入文字的內容是非常豐富的,包括漢字,英文字母,漢語拼音,數字和標點符號等。各種字符混合輸入,就要涉及到鍵盤輸入法的切換問題,這些都是由各個切換鍵完成的,也是我們需要了解的。下面我們以榮耀9手機短信為例介紹中文漢字,字母,符號和數字混合輸入的方法,如下圖所示。
圖1,中文短信輸入界面
現在是中文輸入狀態(中英文切換鍵“中”字比較大些),點中英文切換鍵可以切換到英文字母(中英文切換鍵“英”字比較大些)輸入狀態,如下圖所示。
圖2,英文和漢語拼音字母輸入
這個鍵盤可以輸入英文字母,漢語拼音字母,包括大小寫等。例如輸入App三個英文字母,如下圖所示。
圖3,輸入App英文字母
首先按左下方的“↑”大小寫字母切換“shift”鍵,然后按“a”字母鍵,這時大寫的“A”進入候選欄,再按pp,在候選欄得到了App,點App則進入輸入框。由此例可見,shift鍵是一次性的(有的手機輸入法按動shift鍵后一直有效),按一次,只負責切換一個字母“a”。所以只有a切換到了大寫的A,后面的pp依然是小寫。再點擊中英文切換鍵可以回到中文輸入鍵盤。
下面我們看在中文輸入狀態下,如何進行數字輸入。圖1鍵盤上的“123”是數字切換鍵,點這個鍵,結果如下圖所示。
圖4,進入輸入數字狀態
可見,出現了數字鍵盤,這時可以輸入數字,比如輸入123,結果如圖所示。
圖5,輸入數字123的結果
點返回,又回到漢字輸入鍵盤。
中英文切換鍵適合于大量英文,或者漢語拼音字母輸入,一次切換,多次輸入。但有時在輸入漢字的時候,需要臨時輸入英文字母和數字,這時沒有必要按鍵進行中英文切換,可以采取臨時的方法。比如現在輸入漢字的時候要臨時輸入字母“A”,可以按住“2ABC”鍵(注意要長按),如下圖所示。
圖6,臨時輸入字母和數字的方法
這時屏幕浮動顯示如圖的“ABC2abc”,然后手指左右移動可以在這些字符中進行選擇(選中時點藍字符,現在A被點藍),包括大小寫和數字等,輸入完松開手即可。
下面看如何輸入標點符號,常用的標點符號在左側豎欄,如果這里找不到,可以點“符號”按鈕,出現下圖。
圖7,輸入標點符號和數字
這時可以輸入數字,標點符號等。這里有些符號是成對兒的,這時要注意,如果點左側的,出一對兒符號,否則出一個符號。例如現在要點雙引號,點左側的,結果如圖所示。
圖8,點一對兒雙引號
可見,同時出了一對兒雙引號。括號也是如此,點左側是雙的,點右側是單的,書名等也是這樣。如下圖所示。
圖9,點一對兒括號
現在是點左側括號的結果,出一對兒括號。而且這種方式插入光標恰好就在括號或者雙引號內,非常方便輸入。
在圖7中,點“更多”按鈕,可以翻頁,如下圖所示。
圖9,另一頁標點符號
可見,這里又出現了一頁符號。
下面我們介紹26鍵拼音輸入法的切換。點圖1的四個小方格,如下圖所示。
圖10,點四個小方格的結果
出來一個包含更多內容的面板,點“輸入方式”按鈕,如下圖所示。
圖11,輸入法切換
這里包括各種輸入方式切換按鈕,現在選“拼音26鍵”,如下圖所示。
圖12,拼音26鍵輸入法
這是26鍵拼音輸入鍵盤。拼音26鍵來自于電腦鍵盤,一鍵代表一個字母,所以這種輸入方法的特點是一次性輸入,不必進行再次的精確輸入,別的方面與拼音9鍵都差不多。例如還是以發短信為例,要輸入平均二字,現在輸入拼音“pj”,如下圖所示。
圖13,輸入平均二字
平均二字立刻顯示在候選欄,不必再精確輸入了。這種方法的缺點是鍵位比較多,密集,容易誤觸,所以比較適合于大屏手機。
據說,中老年朋友比較喜歡拼音9鍵輸入法,年輕人比較喜歡拼音26鍵輸入法。原因是,中老年朋友們過去都使用過功能機,功能機一般都是9鍵。延續下來的習慣,所以現在都比較喜歡九宮格輸入法。年輕人一般都比較喜歡玩兒電腦,從電腦延續過渡過來,因此現在依然喜歡手機拼音26鍵輸入法。尤其是95后的年輕人,從接觸手機以來,就使用大屏智能機,并且沒有經歷過9鍵實體鍵盤,所以,比如喜歡使用26鍵拼音輸入法。
#漢字##中文處理##鍵盤##英文字母##漢語拼音#
們玩了這么多年的電腦,相信很多人的打字速度都很慢,甚至有的人到現在都是“一指禪”,今天筆者就來教大家電腦快速打字技巧,送給每一位初學者。
一、認識鍵盤
首先大家要了解鍵盤,一般來說,鍵盤上可分為四個區域,分別為:功能鍵區、主鍵盤區、控制鍵區、數字鍵區,以及狀態指示區。具體請看下圖便一目了然。
二、打字指法
1、練習打字,開始一定要養成良好的指法習慣,否則后患無窮,拿出你的雙手,再找到主鍵盤區的字母第二行。
“ASDF”分別對應著左手的小拇指、無名指、中指、食指;
“JKL:”分別對應著右手的食指、中指、無名指、小拇指。
2、每個手指除了指定的那幾個鍵之外,還要分工其他的鍵,我們稱之為范圍鍵,通過下圖觀察:
左右兩側的紫色區域,由小拇指負責;
左右兩邊的紅色區域,由無名指負責;
左右兩邊的灰色區域,由中指負責;
中間的綠色區域,由食指負責;
空格鍵由大拇指負責。
第三步:指法與訓練
通過第二步記住了26個英文字母在鍵盤上的順序之后,就需要了解打字的指法了,如下圖所示:
初始狀態手指位置
在初始狀態下,兩大拇指放在空格鍵,左手其余四指分別放在A S D F 鍵上,右手其余四指分別放在J K L ;鍵上,中間隔G H兩個鍵。
接下來需要了解每個鍵需要用哪個手指敲擊。
了解指法之后,就是實戰練習了,練習鍵盤打字,可以借助一些專業的打字訓練軟件,比如金山打字通,可以進行指法練習,英文打字訓練,中文打字訓練等。新手在練習的時候,要強迫自己不要看鍵盤,盡量靠背誦回憶字母的位置,手指頭慢慢摸索按鍵位置,一次敲不中多敲幾次,讓手指頭形成肌肉記憶。
最后附上學習計劃:第一天,背誦鍵盤字母順序;第二天,上機操作,熟悉指法;第三天,鞏固訓練;第四天,敲鍵如飛。
學會電腦快速打字的技巧和方法,堅持練習7天,以后再也不怕被別人嘲笑打字慢了。