我试着用C打印一个数组,但是输出与数组中的数字不匹配。我刚刚开始学习C,所以这可能是一个真正的nooby错误,但我希望有一个解决方案。
int main() {
double arr[] = {1,0.2,
0.3,0.4,0.5,
0.6,0.7};
for(int i =0; i<7;i++){
printf("%d ",arr[i]);
}return 0;}输出:0 -1717986918 858993459 -1717986918 0 858993459 1717986918
发布于 2022-03-14 13:08:50
%d格式说明符(以及%i)用于打印十进制int,而不是double。
您希望使用%f代替。
printf("%f ",arr[i]);输出:
1.000000 0.200000 0.300000 0.400000 0.500000 0.600000 0.700000https://stackoverflow.com/questions/71468298
复制相似问题