[英]Visual studio code bug
我正在編寫一個程序來反轉 vs 代碼中的 5 位數字,它是這樣的:
// Program to reverse the number
#include <stdio.h>
#include <math.h>
int main()
{
int num, rev_num, a, temp,i;
printf("\nEnter the number to be reveresed: ");
scanf("%d", &num);
a = 0;
for (i = 4; i > (-1); i--)
{
temp = num % 10;
num = (num - temp) / 10;
a = a + temp * pow(10, i);
}
printf("\nThe reverse number is: %d",a);
return 0;
}
其中一個輸入在這里: INPUT PIC它通過從最后一位數字中減去 1 來產生 output。 其他輸入的情況也類似。
它在除 vs 代碼之外的所有 c 編譯器中產生了正確的 output。 vs代碼中是否有一些錯誤或我的程序有誤。
您正在使用浮點 function 用於 integer 目的。
這樣做時遇到一個問題是正常的。
比較浮點數學是否損壞?
應該使用整數的浮點數的骯臟細節也可以很容易地解釋一個編譯器上看似正確的行為與其他編譯器上的錯誤結果之間的差異。
因此,假設您的問題是“vs 代碼中是否存在錯誤[?] 或者我的程序錯誤[?]”。 我會說 VSCode 中可能存在一個錯誤(因為我只是假設對於任何更大的程序......),但沒有解釋你的觀察。 問題出在您的代碼中。
在這種情況下,很容易保持一個增量( *10
而不是+1
)數字。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.