編譯沒問題運行值等於0
① 如圖,此程序運行後結果一直等於0,請問問題出在哪裡
是的,程序最終是輸出0。
因為d的值早就是0了。
雖然沒有看明白你的程序要做什麼,但出現0的原因是c=a/b這一句。
想要不等於0,把這一句改成c=1.0*a/b,即可。
② 為什麼編好的C++程序,編譯時沒錯,到了運行時總是出現Win32線程退出,返回值為0,然後就沒有結果了
是有死循環, 估計你是把if寫成while了吧? 條件判斷符號== 寫成=了。我給你改了一下,你看看是不是你要的。
#include "iostream"
using namespace std;
#include "cmath"
void main()
{
int i=0,j=0;
double thita[8]={1.5708,0.7854,0,-0.7854,-1.5708,-2.3562,-3.1416,-3.927},
x[8]={-0.5,-0.35355,0,0.35355,0.5,0.35355,0,-0.35355},
y[8]={1.25,1.60355,1.75,1.60355,1.25,0.89645,0.75,0.89645},
a[8]={-0.5,-0.5,-0.20711,0.20711,0.5,0.5,0.20711,-0.20711},
b[8]={1.04290,1.45711,1.75,1.75,1.45711,1.04290,0.75,0.75},
S=0.4142,
A,B,E,
I[8][8],ln[8],aatan[8];
for(i=0;i<=7;i++)
{
for(j=0;j<=7;j++)
{
if(i==j)
I[i][j]=3.1416;
else
{
A=0-(x[i]-a[j])*cos(thita[j])-(y[i]-b[j])*sin(thita[j]);
B=(x[i]-a[j])*(x[i]-a[j])+(y[i]-b[j])*(y[i]-b[j]);
E=(x[i]-a[j])*sin(thita[j])-(y[i]-b[j])*cos(thita[j]);
ln[j]=log(1+(S*S+2*A*S)/B);
aatan[j]=atan((S+A)/E)-atan(A/E);
I[i][j]=0.5*sin(thita[i]-thita[j])*ln[j]-cos(thita[i]-thita[j])*aatan[j];
}
cout<<I[i][j]<<" ";
if(j == 7)
cout<<endl;
}
if(i == 7)
cout<<endl;
}
}
③ 為什麼編譯正確的,但是運行結果一直都是0
編譯正確,只能說明代碼沒有語法錯誤,但並不排除代碼中存在邏輯性的錯誤,比方說 a=b+1 ,如果誤輸為 a=b+2,語法上可能沒錯,但運行結果可能就大相徑庭了。這樣的錯誤編程系統一般是無法自動發現的,只能靠人工逐步排查了。
④ c語言運行結果為0,求大神修改
#include<stdio.h>
floatmain(){
floatF,C;
scanf("%f",&F);
C=5.0/9.0*(F-32);
printf("%f",C);
return0;
}
/*
一、你的取地址符「&」忘記加
二、精度的問題,算數運算時時從左往右計算(括弧優先)的原則運算的,5/9的時計算機會認為2個int計算取整後為0;所以你要再前面確定個精度。
*/
⑤ c++編譯沒問題,出來的結果怎麼就是一個0,不是我想要的答案啊。。。。
for(int j=0;j!=3;j++);
{
scores[data[i][j]]+=j;
}
for(int n=0;n!=3;n++);後面多了個分號
for(int n=0;n!=3;n++)成了賦值語句,N=3
cout<<scores[n]<<endl;就只輸出一個結果了
因為scores[3]={0,0,0};所以你前面的代碼加來加去就是0
整段代碼輸出就只有個0嘍
⑥ 為啥我這個輸出一直是0,編譯沒錯誤,運行就是0
scanf("%lf",&x); 就可以了,沒有必要限制手動輸入的格式。
⑦ microsoft visual studio 2010 運行吃、C語言,編譯成功了為什麼運行時閃現一下然後提示返回值為0如圖
在後面加一句getchar()
#include<stdio.h>
main()
{
printf("this is C");
getchar();
}
⑧ c語言運行結果,為什麼是0
在c語言你這里a[n]/(n+1)這里等於0,遞歸出口返回的是0,0乘以任何數都得0唄。n*fun(n-1)這里也是0。
⑨ C語言中編譯正確,但是運行結果顯示全是0,怎麼回事啊
a=1/2×b×n,這個表達式是有問題的,1÷2求商的話,他永遠等於零,所以你的結果不管輸入什麼都是為零的。
⑩ 一個C++程序,編譯沒有出現問題,但是運行結果永遠是直接return 0
看了一遍程序,感覺可以輸出結果,運行一下,發現也是可以的,問題在哪兒?