for i=0 to i=n
如果分數大於等於85,就讓grade為a
如果分數大於等於75,就讓grade為b
如果分數大於等於60,就讓grade為c
如果分數小於60,就讓grade為d,count++ count用於統計不合格人數
end i
返回count
calc函式
定義ifor i=0 to i=n
將三科總分存入sum
endsort函式
定義struct student 型別的temp
氣泡排序:for i=0 to i=n-1
for j=0 to j=n-i-1
如果前乙個的總分小於後乙個交換兩個結構變數
struct timenow //用來存放時間的時分秒
定義pass存放過去時間
輸入現在時間
輸入過去時間
將過去時間加在now.second
while(now.second>=60)
now.minute++;
now.second-60; //表示過去一分鐘
while(now.minute>=60)
同上 //表示過去一小時
while(now.hour>=24)
now.hour-=24; //過去一天
)
他的做法非常的精簡,特別是while( *cp++ = *src++ )這一句要是我肯定不會把賦值語句放在while裡面,雖然這樣也是可行的,而且更精簡,但它的做法也是可行的
不失為乙個好做法
int __cdecl strcmp (
const char * src,
const char * dst
)
我覺得這個**就是好在! (ret = *(unsigned char *)src - *(unsigned char *)dst) && dst這個迴圈條件設定的很精練,定義了乙個ret變數存放兩陣列比較的結果,
並且用&&dst這個條件保證會比較到dst的最後乙個字元或兩字串不相等,這樣大大減少了**量,還用了const來保證陣列的值不會被改變,在不需要改變陣列的
情況下這樣定義可以很好的避免意外
union共用體和結構體非常相似,只是裡面的變數會公用相同記憶體單元,必要的時候可以用它減少記憶體的使用
列舉型別enum 型別名 變數名
遞迴實際上是把問題簡化為形式相同,但較簡單的問題,程式書寫時只給出統一形式,到運算時再展開,每經過一次遞迴,問題就被簡化一次
遞迴的關鍵在於歸納出遞迴式子,確定出口,寫程式時只要給出運算規律,對於具體過程不要深究
a選項會給出一整串字串,只有c會輸出m
根據運算子優先順序可以知道它最後是對位址進行自增所以錯誤
它這裡shangxi和zhangsan比較時要注意z是小寫
這一題要注意先是函式的巢狀呼叫再是輸出
C語言部落格作業 結構體
第乙個函式的編寫 首先要遍歷結構體陣列使sum得初始值為0,遍歷陣列中的score與sum相加。第二個函式編寫 先定義乙個結構體中間量temp 用選擇排序法進行排序,進行第二個函式的操作。本題沒有問題認為可以將第乙個函式中的 s用p去操作可以節約空間,還有就是可以用typedef對結構體取別名這樣會...
C語言部落格作業 結構體
1.本題pta提交列表 2.設計思路 void calc struct student p,int n void sort struct student p,int n 3.截圖 4.本題除錯過程碰到問題及pta提交列表情況說明 碰到的問題 最開始用冒泡法,排序反了 解決方法 改變冒泡法內層迴圈的判...
C語言部落格作業 結構體
struct student 該結構體表示學生的學號 姓名 成績和等級 struct worker 結構體表示職員的姓名 基本工資,浮動工資 支出 實際工資 定義結構陣列s n 迴圈輸入n個職員的資訊 for i 0 to i n 1 計算s i sjgz end for 輸出n個職員姓名和實際工資...