2015-03-31 67 views
0

它們的等效字符我怎麼能打印字符對於給定的ASCII碼值?..打印的ASCII碼值,並用C

我看到這個question,我的問題是相似的,只是相反

下面是我的程序,但它不起作用。

int main(){ 
int code;  // code that user enters 
char ch;  //"codes" related ASCII charcter 

printf("Enter a ASCII code value: \n"); 
scanf("%d", &code); 
ch=code; 

printf(" %c is cherechter that have %d ASCII code\n", &ch ,&code); 

system("PAUSE"); 
return 0;} 
+0

只要你知道,你可能不會使用ASCII。輸入161,你可能會得到一些東西,也許。如果您使用的是ASCII,那將是一個錯誤,因爲ASCII有128個編碼點,編號爲0到127。 – 2015-03-31 16:17:21

回答

2

在你的代碼,你必須改變你的printf語句

printf(" %c is cherechter that have %d ASCII code\n", &ch ,&code); 

printf(" %c is cherechter that have %d ASCII code\n", ch ,code); 

因爲,打印,你並不需要提供地址的變量。變量名稱就夠了。

0

更改您的代碼:

int main(){ 
char code; //change from int to char 
char ch;  

printf("Enter a ASCII code value: \n"); 
scanf("%c", &code);//ASCII is a character not integer 
ch=code; 

printf(" %c is cherechter that have %x and %d ASCII code\n", ch ,code,code);//don't print the address access the value 

system("PAUSE"); 
return 0;}