问答详情
源自:2-5 格式化输出语句

怎样解释这样的问题?

#include <stdio.h>

int main(){

    int age = 18;

float height = 1.85;

char unit = 'm';

printf("小明今年%d岁\n", age);

printf("小明身高%fm\n", height, unit);

printf("小明现在在慕课网上学习IT技术%c\n", unit); 

return 0;

}

为什么这样运行时对的,而下面这样不对勒,请大神指教

#include <stdio.h>

int main(){

    int age = 18;

float height = 1.85;

char unit = 'm';

printf("小明今年%d岁\n", age);

printf("小明身高%f\n", height, unit);

printf("小明现在在慕课网上学习IT技术%c\n", unit); 

return 0;

}


提问者:慕粉4492565 2020-07-20 00:21

个回答

  • qq_慕慕1203224
    2020-07-20 01:19:00

    printf("小明身高%f\n", height, unit); 

    printf("小明身高%f\n", height, unit);

    在这一行中缺少米这一身高单位了,需要加%c,上面那个是因为你自己加了m所以显示正常,但实际上要加字符型输出比较合适

    printf("小明现在在慕课网上学习IT技术%c\n", unit); 

    其次这一行也不对,不需要加字符直接输出就行,这样运行结果没有后面m这个字母