c語言程式設計高手請進謝謝,C語言程式設計,高手請進,謝謝

時間 2021-09-16 05:46:55

1樓:匿名使用者

根據樓上提供的進行優化,已經除錯成功的(去掉了註釋,考慮到各個機器的輸入法問題,所有的printf 內容都換成英文)。

#include

#include

#include

#include

#define null 0

#define len sizeof(struct student)

#define file_data_path "c:\student.txt"

struct student

; int total_num = 0;

struct student *head = null;

void welcome();

void mainmenu();

void record();

void insert(struct student *stu);

void display(struct student *stu);

void displayall();

void query();

void query_by_num();

void query_by_name();

void readdata();

void writedata();

void freeall();

void del();

void change();

void devise(struct student *p);

int main()

else

else }

} return 0;

} void welcome()

void mainmenu() }

while(choice != 0);

} void record()

void insert(struct student *stu)

else

if(p0->num <= p1->num)

else }

total_num++;

} void display(struct student *p)

void displayall()

while(p != null);

} printf("\n");

} void query() }

while(choice != 0);

} void query_by_num()

p1=head;

while(num!=p1->num && p1->next!=null)

p1=p1->next;

if(num == p1->num)

else

printf("not find check again!");

} void query_by_name()

p1=head;

while(strcmp(name, p1->name) && p1->next!=null)

p1=p1->next;

if(!strcmp(name, p1->name))

else

printf("not find check again");

} void writedata()

fprintf(fp,"%d\n", total_num);

for(p = head; p!= null; p= p->next)

fclose(fp);

} void freeall() }

void readdata()

head = p1 = p2 = (struct student *)malloc(len);

fscanf(fp,"%ld\t%s\t%d\t%s\t%s\t%s\t%ld\t%s\n",

&p1->num, p1->name, &p1->age, p1->***, p1->birthday, p1->address, &p1->tele_num, p1->e_mail);

while(!feof(fp))

p2->next = null;

fclose(fp);

} void del()

printf("enter the student number you want to delete:");

scanf("%ld", &num);

p1 = head;

while(num != p1->num && p1->next != null)

if(num == p1->num)

else

printf("not find check again�\n");

} void change()

printf("enter the student number you want to change:");

scanf("%ld", &num);

p1 = head;

while(num != p1->num && p1->next != null)

if(num == p1->num)

devise(p1);

else

printf("not find check again�n");

} void devise(struct student *p) }

while(choice != 0);}

2樓:匿名使用者

加我。先去看下我的空間《實習專案名稱:學生成績管理系統》

3樓:我是菜狗

自己寫~~很簡單~你從學連結串列和檔案

c語言程式設計高手請進~

4樓:匿名使用者

雖然本人不是什麼c語言高手,不過對於lz的程式,本人還是有些許拙見要向lz說明的:

首先是語法錯誤:程式中的x變數是float型的,但scanf中讀入的x卻是整型的,應改為scanf("%f, %d", &x, &y)比較好。

其次是演算法有問題:lz是不是每次執行都得不到結果呢??原因是程式中濫用了return 0。例如:

if (y > 0)

else

}printf("%-6f^%d=%-6f", x, y, t);

}其中if (y != i)……else本人是看了好幾遍也不知道lz有何用意,而且for迴圈的最後一次迴圈一定會有y==i,於是會導致迴圈進入了else語句中執行return 0,那結果都返回了還怎麼執行printf("%-6f^%d=%-6f", x, y, t)語句呢??下面的也差不多是這個問題了!!!

最後也就是一樓提到的語句簡潔問題,我就有點不明白樓主為什麼那麼喜歡在if………語句中都用到printf("%-6f^%d=%-6f", x, y, t),其實這個句子最後統一再用也行,當然這個也只是小問題了!!!主要的還是前兩個問題使樓主的程式不能正確執行!!

下面是我寫的程式,基本上也是秉承了lz的演算法,只是有些改動。

int main(void)

printf("%-6f^%d=%-6f", x, y, t);

return 0;}

5樓:匿名使用者

ls的回答不錯

即指明瞭錯誤的方向原因

又給餘了lz自己尋找改正的空間

恩, 向上頂

6樓:

問題大概有3個,讀錯,有的條件重複,注意語句的簡潔。

首先提醒下,scanf要讀的是兩個不同的型,而不是%d,%d

後面的就交給你自己了……

**等:c語言程式設計高手請進!!!!!!

7樓:匿名使用者

main()

zhengdian=0; //鳴完撤除正點報時標誌.

}if(xiangling==1) //判斷響鈴標誌是否為1

buzzle(3750,1,1); //是,呼叫鬧鈴函式,3750*16ms=60s

scanner(1); //呼叫顯示函式

if(key==0) //判斷鍵有無按下.}}

/***************時間調整函式*******************/

/************設定鬧鐘函式.*************************/

void naoling(void)

else break; //按下時間大於0.5s,跳出分調整.

}shibiao=1; //時閃爍

while(key==0)scanner(1);//鍵釋放否?

scanner(2); //是.

while(1)

else break; //按下時間大於0.5s,跳出時調整.

}tiaoxian=0; //鬧鈴顯示模式關閉.

tr1=0; //閃爍關閉.

shibiao=0; //時閃爍標誌清零

biaozhi=0; //時閃爍標誌清零.

disp[2]=0x40; //恢復橫槓

disp[5]=0x40;

while(key==0)scanner(1);//調時退出程式。等待鍵釋放

scanner(2);//是,延時消抖

}/********t0中斷服務,用於加1和判斷響鈴.**********/

/***************顯示函式***************/

/***************1ms延時函式,顯示呼叫***************/

8樓:

合併後的節點的值來自**呢?

一道簡單的c語言程式設計題,高手請進!**等!!!

9樓:匿名使用者

#include"stdio.h"

#include"string.h"

int strend(char s1[50],char s2[50]);

void main()

int strend(char s1[50],char s2[50])

return 1;}

c語言程式設計問題,高手請進

倒數第7行 有錯誤 定義的是i 不是y int s 1,i 我看了一下 你的 你的不完善 如果是2進位制 只能表達從 1 255 之間的數。如果是三進位制 也只能表達 0 19682 之間的數。 十進位制轉二進位制,知道演算法就很簡單啊 你想問什麼,能否具體點? 呼叫函式怎麼形參有一個y 函式體內又...

關於C語言和程式設計,用C語言程式設計和用C 語言程式設計區別大嗎?

一 工欲善其事,必先利其器 這裡介紹幾個學習c語言必備的裝置和書籍 a 開發環境 例如turbo c 2.0,這個曾經佔據了dos時代開發程式的大半個江山。但是現在windows時代,用turbo c有感覺不方面,編輯程式起來很吃力,並且拖放,更沒有函式變數自動感應功能,查詢參考資料也不方便。建議使...

c語言程式設計謝謝

既然你是想得到兩條對角線的元素之和,可是怎麼能只有一個輸出呢,可以定義int sum1和sum2,分別儲存和。判斷條件是對的,但是不必用else。其實直接將陣列元素相加不就行了。不是用if和else 而是if i j i j 2 sum a i j 你的也對的.是這個問題啊 第二個for裡面引數 f...