❶ C語言輸入字母,實現輸出對應數字,例如輸入a或者A輸出1,輸入F或f輸出6。求
這個是很簡單的。你可以將字母a用數字的方式列印出來試試,如printf("%d",'a');輸出是97,那麼只要減去96就可以了。順便說一下,首先char其實就是8位的整數變數,但是由於ASCII碼的編碼也是8位,所以常常使用char來表示ASCII字元,因此char也叫字元變數。所以char變數的本質就是數字。不難發現通過查找ASCII表,a的編碼的十進制數就是97。當然你也會發現a和A的編碼是不一樣的,如果你的功能是輸入a和A輸出都是1,那麼就要提前判斷一下。
當然你也可以通過判斷來實現這個功能,如:
chartemp=getchar();
if(temp=='a')
......
elseif(temp=='A')
......
elseif(temp=='f')
......
還有,可以通過switch來實現,如:
chartemp=getchar();
switch(temp)
{
case'a':
......
break;
case'A':
......
break;
default:break;
}
需要聲明一下,由於char本身就是數字,所以是可以使用switch的,但是不要妄圖通過switch來判斷字元串變數(char[])這是不可行,雖然你可能在其他的高級語言中看到過這種用法,但是在C中是不能運行的。