为了账号安全,请及时绑定邮箱和手机立即绑定

为什么不管用

#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;    

}


正在回答

3 回答

没有定义变量x的类型。

0 回复 有任何疑惑可以回复我~
#1

后hou3718826 提问者

非常感谢!
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;    

}


0 回复 有任何疑惑可以回复我~

”x=c;“换成”int x=c;“可以运行吧。。因为你不能直接出来一个变量x,得设一个变量出来。

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
C语言入门
  • 参与学习       926249    人
  • 解答问题       20798    个

C语言入门视频教程,带你进入编程世界的必修课-C语言

进入课程

为什么不管用

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信