回覆列表
-
1 # 使用者3014066434106
-
2 # 湯圓電影Vlog
在ASC碼中,大小寫字元分別連續儲存。所以,相同字元的大小寫差值是相同的,這個差值是十進位制的32。在不記得這個差值的情況下,可以用"a"-"A"來表示。於是,大寫轉為小寫,可以寫作c = c-("A"-"a");或c = c+32;小寫轉為大寫,可以寫作c = c-("a"-"A");或c=c-32;
思路:先定義字串,並輸入,然後對字串進行遍歷,並判斷是否是大寫字母,如果是則其ASCII加32,如果是小寫字元則其ASCII減去32,最後輸出字串即可。#include <stdio.h>int main(){char a[100];int i;gets(a);for(i=0;a[i]!="\0";i++)if(a[i]>="a"&&a[i]<="z") a[i]-=32;else if(a[i]>="A"&&a[i]<="Z") a[i]+=32;puts(a);return 0;}/*執行結果:abc23DEFABC23def*/