用C語言的知識編寫程式,這個怎麼寫啊嗚嗚,老是出錯

時間 2022-03-08 14:00:03

1樓:匿名使用者

#include

#define n 5

struct car ;

void main()

2樓:夏天的小紅花

定一個結構體用來儲存一輛汽車的三個資訊,輸入五輛車的資訊後進行排序,然後進行輸出。以下是程式的**和執行的結果。

#include

int main()

a[5],t;

int i,j;

printf("請輸入5輛車的車牌號 車型 **:\n");

for(i=0; i<5; i++) //有改動

for(i=0;i<4;i++)

for(j=0;j<4-i;j++)

if(a[j].price

printf("%s\t%s\t%d\n",a[i].carname,a[i].cartype,a[i].price);

return 0;}

3樓:直角世界的部落格

我可以幫你分析下你的**。找到自己的錯誤比解決問題更重要。

多半是字串和數字混合輸入時,用scanf的問題。我給你寫一下。稍等。

scanf數字後,有個空行要吃掉。我用的fgets和atoi,這是更安全的方法。

以及qsort是c自帶的函式,可以避免手寫排序方法。

#include

#include

struct car{

char s1[50];

char s2[50];

int price;

int carcomp(struct car* car1, struct car* car2)

return car2->price - car1->price;

int main()

struct car car[5];

char buffer[50];

for(int i=0;i<5;i++)

printf("輸入第%d輛車的車牌號:",i);fgets(car[i].s1,49,stdin);

printf("輸入第%d輛車的車型:",i);fgets(car[i].s2,49,stdin);

printf("輸入第%d輛車的**(單位:萬元):",i);fgets(buffer,49,stdin);car[i].price=atoi(buffer);

double sum=0;

for(int i=0;i<5;i++)

sum+=car[i].price;

printf("平均**(萬元):%d\n",sum/5);

qsort(car,5,sizeof(car[0]),carcomp);

printf("**最貴的車的車牌號:%s 車型:%s **:%d\n",car[0].s1,car[0].s2,car[0].price);

printf("車輛按降序:\n");

for(int i=0;i<5;i++)

printf("車牌號:%s",car[i].s1);

4樓:匿名使用者

linking...

link : fatal error lnk1104: cannot open file "debug/cpp1.exe"

執行 link.exe 時出錯.

這個我也遇見過,其實你這段話寫的沒一點問題,但為什麼會出現這樣的原因是因為:他並沒有構建,就是說在linking的時候已經出現了問題,問題一般是由於類庫的某些檔案在自己不知道的情況下給修改了,已構成無法構建的問題!

寫了一個c語言程式,執行老是出錯,不知道是**有問題,編譯的時候也沒有錯誤,願大佬幫我解決

5樓:大維

你粘到這上面的程式 不完整! 結構體要先宣告 並且你的第一個元素mark,最好要指定大小!

#include

struct napkin

;void printa(struct napkin *dp);

int main()

void printa(struct napkin *dp)

6樓:琴海情殤

將輸出語句printf("%s\n",dp->mark)改為

c語言執行出錯什麼原因

7樓:歡樂多

for (i=0,sum=0;i<10;++i,sum+=i);

另外main 打錯了

8樓:

編譯沒有錯是因為你寫的mian函式的語句符合c規範,而連結有錯誤是因為c必須有一個入口函式或叫主函式main(),而你這裡卻沒有。

9樓:vs坑爹的號

編譯沒出錯表明的是語法是正確的!而連線的錯誤是因為邏輯性的問題,出現了沒有解決的外部引數。按照你的意思,應該是求1到10的和。

那麼在for迴圈這裡是肯定有問題的。還有int只是定義了變數,但是變數的值是隨機的,所以按照你這樣的做法是可能進入不到迴圈的。應該對變數初始化

正確的寫法是這樣的:

int i,sum=0;

for(i=0,i<=10;i++)

sum=sum+i;

printf("sum=%d\n",sum);

還有main也寫錯了

10樓:匿名使用者

如果是新手,不建議這麼寫,尤其以後和幾個人合作,要知道豬一樣的隊友之可怕!

for迴圈結構中,建議**結構清晰,講sum放在for迴圈的大括號中吧。

for(i = 0; i < 10; i++)

11樓:匿名使用者

首先是 void main()

再是 for(i=0,sum=0;i<10;sum=i) 你寫的**中 i, 是不允許的

這就是那兩個錯誤,我不知道你究竟想完成什麼功能,所以只幫你挑出錯誤

12樓:

main不是mian

用c語言編的程式為什麼出錯呢 10

13樓:物理公司的

應該是void main()

void isleap()

14樓:逆亦壘

寫的有點亂,主程式子程式混在一起

15樓:洋風

isleap函式後面,多了一個分號。對函式名宣告時要加分號。而在編寫函式時,是不需要分號的。

用C語言編寫程式資料結構,用C語言編寫程式 資料結構

第5 題 include include define max 256 typedef int list max typedef int elemtype typedef int status define overflow 1 define ok 1 define list init size 8...

用C 語言編寫程式,遞迴函式,用c 編寫程式用遞迴法計算一個整數的所有數字之和

1 在數學上,關於遞迴函式的定義如下 對於某一函式f x 其定義域是集合a,那麼若對於a集合中的某一個值x0,其函式值f x0 由f f x0 決定,那麼就稱f x 為遞迴函式。在程式語言中,把直接或間接地呼叫自身的函式稱為遞迴函式。函式的構建通常需要一個函式或者一個過程來完成。2 遞迴函式 是建立...

c語言編寫程式,c語言程式編寫

c語言的教材上好象有這個題,現在沒有時間編寫,著急要嗎?第二個應該越簡單越好。include void main printf 3d,3d,3d max maxi maxj printf 3d,3d,3d min mini minj 進行逐項比較。第一題 include main elsebreak...