为什么我打出来是99?任务是要打出97的

来源:2-8 自动类型转换

徐东根

2015-07-31 14:00

#include <stdio.h>

int main()

{

    char c = 'a';

    int n ='c';         //将c赋值给n

    float f ='c';       //将c赋值给f

    double d = 'c';     //将c赋值给d

    printf("%d\n",n);

    printf("%f\n",f);

    printf("%f\n",d);

    return 0;    

}


写回答 关注

4回答

  • Perona
    2015-07-31 14:13:00
    已采纳

    变量名是不需要加引号的,你这里加了引号

    int n ='c';         //将c赋值给n
    float f ='c';       //将c赋值给f
    double d = 'c';

    变成了输出字符c了。

    建议把引号去掉,如下

    #include <stdio.h>
    int main()
    {
        char c = 'a';
        int n = c;     //将c赋值给n
        float f =c;     //将c赋值给f
        double d =c;   //将c赋值给d
        printf("%d\n",n);
        printf("%f\n",f);
        printf("%lf\n",d);
        return 0;    
    }


    徐东根

    非常感谢!

    2015-07-31 14:16:05

    共 1 条回复 >

  • 穷游驴包
    2015-09-07 23:04:56

    原来‘c'跟c的问题

  • Lay0305
    2015-07-31 14:07:10

    无图图真相呀

    徐东根

    啊呀我第一次提问弄不来,现在贴了

    2015-07-31 14:09:07

    共 1 条回复 >

  • Perona
    2015-07-31 14:01:39

    贴代码

    徐东根

    贴贴贴了

    2015-07-31 14:08:42

    共 1 条回复 >

C语言入门

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

926024 学习 · 20793 问题

查看课程

相似问题