#include<stdio.h>
#include<stdlib.h>
int main ()
{
int a ;
scanf("%d",&a);
printf("%d",a);
system("pause");
return 0;
}
请问我输出a为何会输出数字是2呢 以整数%d输出 不应该是输出a的ascii的码吗
实际上,这个值是随机的。因为a没办法转换成整数
要你的结果,可以这么写
#include<stdio.h>
#include<stdlib.h>
int main()
{
int a = 0;
scanf("%c", &a);
printf("%d", a);
system("pause");
return 0;
}
你也可以把
int a;
scanf("%d",&a);
改为
char a;
scanf("%c",&a);
这样,接收的是你输入的任何一个字符,也可以是#,*号等,然后以%d格式输出时,输出的就是该字符的ascii码。