c - 我写下要扫描的第一个数字,按回车键后,它会在 Windows 中显示 'not responding' 消息

标签 c compilation

为什么代码不起作用?编译后,我记下要扫描的第一个数字,按回车键后,它会在 Windows 中显示“无响应”消息。

#include <stdio.h>

int main (void) {
 float x1, x2, y;
 scanf("%f %f", x1, x2);
 if (x1 < x2) {
    y = x1 / x2;
 } else if (x1 == x2) {
    y = x1 * x1 - 3;
 } else {
    y = 4 * x1 + 3 * x2;
 }
 printf("y = %f", y);
 return 0;

}

最佳答案

要使您的代码正常工作,请尝试输入两个数字并在它们之间留空格,然后才按回车键

更新:另外,您必须将指针传递给 scanf,使用 & 前缀 x1x2

另外,检查 floating point numbers equality

关于c - 我写下要扫描的第一个数字,按回车键后,它会在 Windows 中显示 'not responding' 消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19456361/

相关文章:

c - 合并排序的段错误

c - 如何在 C 中操作动态多维数组

C 获取代码在 Windows 7 上不会出现段错误

linux - Emacs 编译缓冲区显示引号的十六进制值

java - 将 java 编译为 jar 时,正确的入口点是什么?

c - 在不同的 "platforms"之间移植 C 代码

c - Libexif undefined reference 错误

c++ - 如何在不要求客户安装的情况下编译PCAP程序

c++ - 我可以设置编译时标志以包含标题吗?

C错误: assignment to expression with array type