为什么不管用
#include <stdio.h>
int main()
{
char c = 'a';
x=c;
int n=x; //将c赋值给n
float f=n; //将c赋值给f
double d=f; //将c赋值给d
printf("%d\n",n);
printf("%f\n",f);
printf("%lf\n",d);
return 0;
}
#include <stdio.h>
int main()
{
char c = 'a';
x=c;
int n=x; //将c赋值给n
float f=n; //将c赋值给f
double d=f; //将c赋值给d
printf("%d\n",n);
printf("%f\n",f);
printf("%lf\n",d);
return 0;
}
2016-07-24
你将c赋值给x的时候或者之前并没有先声明x变量,因此后面的代码才会不管用;只要在x=c前加一句int x;就输出你想要的结果了。
#include <stdio.h>
int main()
{
char c = 'a';
int x; //声明x变量
x=c;
/*上面两句也可以合并成一句:int x=c;
但需要注意的是这里涉及到了强制转换,字符型变量赋值给int型,float型,double型都是转换成其相对应的 ASCIIM码值再赋值,例如‘a’对应的ASCII码值是97,因此c赋值给x,x的值为97,后面的n,d, f的值分别为97 97.000000 97.000000
*/
int n=x; //将c赋值给n
float f=n; //将c赋值给f
double d=f; //将c赋值给d
printf("%d\n",n);
printf("%f\n",f);
printf("%lf\n",d);
return 0;
}
举报