[试图编写在三角形上工作的程序,用户以P0 x y,P1 x y ...的格式输入信息,但是如果用户输入Q,则程序终止。我了解到scanf函数将与带有逻辑运算符的if else语句一起使用,但是我不确定如何实现。
当我运行代码并键入'Q'时,它仍然要求另外2个提示。我在考虑使用字符串数组,但不确定如何使用,建议会很棒,谢谢。
#include <stdio.h>
void main()
{
float x, y;
char Q, input;
scanf("%c %f %f", &input, &x, &y);
if (input == 'Q')
return;
else
printf("points are %f %f", x, y);
return(0);
}
由于格式字符串中有3个格式运算符,因此scanf()
直到它填写所有3个变量或出现错误或EOF时才返回。
两次呼叫scanf()
。如果不是Q
,则一次输入字符,然后输入数字。
#include <stdio.h>
void main()
{
float x, y;
char input;
scanf("%c", &input);
if (input == 'Q') {
return;
}
scanf("%f %f", &x, &y);
printf("points are %f %f", x, y);
return;
}
除了其他答案,您可能还想检查字符'q'和'Q'。