2017-08-30 134 views
0

我不想在scanf之后换行。scanf没有换行符(C编程)

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

该输出是;

I am 19 
years old. 

,但我想是这样的:

I am 19 years old. 
+0

您使用 –

+0

的Visual Studio 2017年 –

+0

请访问这两个环节的哪个编译器,你将一个想法如何进行 https://stackoverflow.com/questions/7170021/how-could-i-achieve-gotoxy -in-gcc https://stackoverflow.com/questions/13706439/gotoxy-function-is-not-working-in-visual-studio –

回答

1

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

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

该代码将先等待用户输入一个年龄那么它会打印出一句话:

我X岁。

你的屏幕在两行显示你的输出的原因是,“scanf(”%d“,& age);”要求您在输入数字(创建一个新行)后按Enter键以便“printf(”years old“);”执行。另外,当你敲击输入你的代码时,存储在变量“age”中的数字没有任何作用。你只是无故存储它。