c語言問題求高手解答,C語言問題求高手解答

時間 2021-10-20 12:55:37

1樓:匿名使用者

幫你寫好了,這裡幫你編譯執行了,沒任何問題,不放心的話你自己試試struct staff

;int main(void)

if (head==null)

puts("沒有任何資料,抱歉!");

else

current=head;

while(current!=null)

current=head;

while(current!=null)

return 0;

}scanf("%d",¤t->age); 這裡其實是¤t->age 不知道為什麼這裡會顯示亂碼,如果貼上不能正常出來的話自己改一下~

2樓:無極罪人

鍵盤有虛擬碼和掃描碼兩個,ox25等這四個是鍵盤虛擬碼,ox48等四個是鍵盤的掃描碼,一下是我找到的一些參考資訊:

——————————————————————————————————————

當使用者按下某個鍵時,

1.鍵盤會檢測到這個動作,並通過鍵盤控制器把掃描碼(scan code)傳送到計算機;

鍵盤掃描碼跟具體的硬體有關的,不同廠商對同一個鍵的掃描碼有可能不同。

2.計算機接收到掃描碼後,將其交給鍵盤驅動程式;

3.鍵盤驅動程式把這個掃描碼轉換為鍵盤虛擬碼;

虛擬碼與具體硬體無關,不同廠商的鍵盤,同一個鍵的虛擬碼總是相同的。

3.然後,鍵盤驅動程式把該鍵盤操作的掃描碼和虛擬碼以及其它資訊傳遞給作業系統;

4.作業系統將獲得的資訊封裝在一個鍵盤訊息中,並把該鍵盤訊息插入到訊息列隊。

5.通過windows的訊息系統,該鍵盤訊息被送到某個視窗中;

6.視窗所在的應用程式接收到訊息後,可以瞭解到有關鍵盤操作的資訊,然後決定作出一定的響應

——————————————————————————————————————

37,38,39,40就是ascii碼,也就是虛擬碼。而且方向鍵值是有兩個,第一個是有符號數-32,你第二張圖裡的判斷ch==224,判斷是它的無符號數,跟-32是一樣的。第二個就是它的真實鍵值,你可以用下面的**檢視(c++)

int main()return 0;}至於為什麼取出的是72,75,77,80應該是直接取了掃描碼,我用其他程式語言測了下,取出來的只是ascii37,38,39,40。如果想那樣呼叫就重新定義一下吧。

個人理解,僅供參考。

這樣可以麼?

c語言問題 求高手解答!!

3樓:匿名使用者

sortd函式系採用選擇法排序演算法將a指向的n個數從大到小排列:每次選出一個數和後面的所有數比較,記住最大數,最後放在隊頭……

遺憾的是選擇部分有誤:if(*q>*maxp) maxp=p;

當q指向的數較大時,應該記住q指向的數:if(*q>*maxp) maxp=q;

另外,建議程式分行,有序縮排,養成良好的書寫習慣:

4樓:藍天不是藍色了

你這個for迴圈不用括號?

c語言問題求大神解答,C語言問題,求大神解答

a 用結構體定義以下學生資訊,結構體名 student 學號 姓名和成績 包括3門課程的成績,可用一個陣列表示 struct student c語言問題,求大神解答! 奔安 include include include typedef unsigned int uint typedef struc...

C語言問題,求解答,C語言問題,求大神解答

f函式中的a每次使用外面傳入的2,b是區域性變數,後每次都是1,c是靜態變數,函式每次執行會在上次值 1 所以最後執行三次,輸出為789 聽不清啊 程式的輸出是 789 c語言問題,求解答 執行abc a 1 首先進行巨集代換過程,是把 a 1去替代 定義的巨集函式 x x 中的x,即得到式子 a ...

C求高手解答謝謝,請高手解答c語言問題,謝謝!

employee char name 10 char address 20 char city 20 char youbian 6 name 10 abc address 20 abc city 10 abc youbian 6 000000 cout 初始化完成 建構函式用初始化連結串列應在類內,...