我的C代码有问题。 我所做的就是:
#include <stdio.h>
int main()
{
float zahlen[2];
for (int i = 0; i < 2; i++) {
printf("%d. Zahl", i + 1);
scanf_s("%d", &zahlen[i]);
}
printf("Division: %f\n", zahlen[0]/zahlen[1]);
printf("Produkt: %f\n", zahlen[0]*zahlen[1]);
printf("Summe: %f\n", zahlen[0]+zahlen[1]);
printf("Diffenrenz: %f\n", zahlen[0]-zahlen[1]);
printf("Mittelwert: %f\n", (zahlen[0]+zahlen[1])/2);
getchar();
return 0;
}
非常感谢您的帮助。感谢。
答案 0 :(得分:1)
您的scanf_s()
函数正在尝试读取基数为10的整数并将其存储到float变量中。因此,当您尝试为第一个号码输入3.14
时,scanf_s()
将停在&#34;。&#34;字符(但将其保留在输入流中)。当您尝试读取第二个十进制整数时,它将进入一个无限循环,等待它可以消耗的字符。
简答:将%d
中的scanf_s()
更改为%f
。
答案 1 :(得分:0)
你处理花车
library(sp)
east_north <- SpatialPoints(dat,
proj4string=CRS("+init=epsg:27700"))
spTransform(east_north, CRS("+init=epsg:4326"))
使用 float zahlen[2];
扫描整数:
"%d"
无论你指的是什么问题,都需要修复 为此,请阅读扫描仪功能的文档,然后阅读:
http://sekrit.de/webdocs/c/beginners-guide-away-from-scanf.html
How to read / parse input in C? The FAQ