C語言 幫看一下程式哪裡有問題啊。

2023-03-15 01:40:02 字數 3462 閱讀 8032

1樓:匿名使用者

主函式中沒有為p分配空間。

修改方法有二:

其一:用malloc函式為其分配空間。

其二:此題目無需將p定義為指標變數 ,直接用struct date型別即可。

第一種方法:

首先包含標頭檔案,然後將主函式改為如下形式:

main()

free(p);

將主函式修改為如下形式:

main()

2樓:匿名使用者

main()

struct date *p;

p=null;

這裡錯了,你的指標是空指標,卻直接賦值顯然是錯誤的,可以使用。

p=new date;

或者c中的malloc為其分配空間就沒問題,具體演算法沒仔細看,自己確認下。

3樓:晏力軍

你的while迴圈部分有問題。

自己看看!!

c語言程式問題? 40

4樓:聽不清啊

從**本身以及執行的情況來看,可執行程式的內容,與所貼的**不相符(可能是修改了**後沒有重新編譯,就執行了修改前的**,不然也不會**現在有錯誤就能編譯通過的,例如第2行的末尾多了「op」,「現有1人捐款」也沒有輸出),修改建議如圖:

5樓:匿名使用者

**截圖呢,沒截圖看個鬼哦,只能猜測你輸出語句用錯了。

c語言程式問題? 20

6樓:紫薇參星

出現sqrt函式的錯誤,是因為sqrt函式的引數要求是double,float或者long double型,而你給的是乙個int型的引數,所以導致引數型別不匹配,把變數area和s定義為double型,這樣sqrt函式的引數是double型的,就不會出錯了。

完整的求三角形面積的c語言程式如下(改動的地方見註釋)

注意輸入的三邊的整數值之間用逗號分隔。

#include

#include

int main()

int a,b,c;

double area,s;//這裡把area和s定義為double型。

printf("請輸入a,b,c的值");

scanf("%d,%d,%d",&a,&b,&c);

s=(a+b+c)/;這裡把2改為型)

area=sqrt(s*(s-a)*(s-b)*(s-c));

printf("三角形的面積為%lf",area);/這裡輸出格式符"%d"改成"%lf"

有沒有c語言大神,給我講講這個程式怎麼執行?一步步詳細分析一下,拜託了

C語言問題,幫忙看一下,謝謝

哈哈,你剛學c吧 等你學過作業系統就知道函式 包括main函式 裡不能定義太大的陣列的,所以那個int bin 100000000 要放在main函式的外面,定義成乙個全域性陣列。另外上面那位老兄說的也不錯,不知道你的編譯器是按什麼編譯選項編譯的,如果很嚴格的話是不允許在for迴圈中定義變數,必須在...

幫忙看一下這個c 程序,幫忙看一下這個c 程式

include class complex void display private double real,imag complex complex complex complex double r void complex int main ok大功告成 好累 幫你指正一下吧,你在把2.5和c1...

c語言 幫我看一下這個程式為什麼結果總是輸出

你term沒初值,c語言預設是0,也就是說,你的term term 2,始終得到的term還是0 sum也是0,因此結果始終是0 你在long sum 0語句前面加上一句 term 1 結果就對了 因為 return 0 所以就 我不認為上面輸出結果為0 你要求的是2 1 2 2 2 3 2 16。...