0

我不想在scanf之后换行。

printf("I am  ");
    scanf("%d", &age);
    printf(" years old");   

这个输出是;

 I am 19
years old.

但我想这样:

I am 19 years old.
4

1 回答 1

3

您没有正确使用 scanf() 。函数 scanf() 接受用户输入,然后将其存储在一个变量中,在您的情况下,这将是变量“年龄”。之后,您可以像这样将变量 age 放在 printf() 语句中。

scanf("%d", &age);
printf("I am %d years old.", age);

该代码将首先等待用户输入年龄,然后打印以下句子:

我今年 X 岁。

您的屏幕将输出显示在两行的原因是,“scanf("%d", &age);" 要求您在输入一个数字(创建一个新行)后按 Enter 键才能输入“printf(" years old");" 执行。此外,当您在代码中按回车键时,存储在变量“年龄”中的数字不会做任何事情。你只是无缘无故地存储它。

于 2017-08-30T15:22:01.523 回答