通過這幾周的函式學習,讓我明白了陣列的複雜,在很多時候運用陣列。很沒頭緒,不知道陣列是如何的工作的,它可以處理很多比較複雜的問題。在不段的學習中,做題目中,不斷的明白了,陣列的功能,
就是乙個有儲存功能的資料庫,在**中,如果要多次使用同乙個資料,用普通的方法很難,因為普通的方法的資料往往只能用一次,遇見陣列,可以多次使用。陣列不僅僅在這裡有很大的功能,還可以簡化很多複雜的題目。比如統計天數的,簡單的用switch語句**非常複雜,如果用二維陣列,非常簡單。陣列的使用有很多的細節,比如變數的定義,陣列的長度,很容易短。還有陣列的遍歷,開始是從0開始不是1開始。很多細節,這幾周的學習,說明了寫題目的重要性,只有鍛鍊題目,才可以很好的理解知識,還有細節還是很重要的。以後要多多的訓練,刷題目。對陣列中很多基本的方法要熟悉,比如冒泡,選擇等等。只有在訓練中才能鞏固。
定義長度n,移動次數m ,存放首元素的temp,移動迴圈需要的k;
- for i=0 to n
scanf //讀入
end for
- if m>n then m=m-n//變更左移次數
- for i=1 to m //迴圈左移次數
- temp =a [0] //存放第乙個元素
- for k to n-1 //後面元素左移
- end for
- a[n-1]=temp //第一元素存為最後乙個元素
- end for
- for i=0 to n
printf //輸出
1.沒有考慮到把第乙個元素要存起來,直接進行移動,這樣最後乙個元素是輸出隨機數。
用temp存第乙個元素,最後把temp存為最後乙個元素。這樣就可以避免元素的丟失。
2.沒有考慮到m>n.的情況,這樣執行會無效。
用if判斷,如果m>n;就是重複移動,只需要移動m-n次就行。直接變化移動次數m=m-n。
定義判斷行列的開關flag和temp為0; 定義統計鞍點個數的count=0;
- for i=0 to n
scanf //讀入
end for
- for i=1 to n //開始遍歷
- for j to n
- temp flag =0//每一次檢索開關都要歸0
- for k to n//遍歷相同行的元素
1.沒有鞍點的情況,輸出有錯誤。一開始我是用這樣判斷
實際上flag0||temp0 不能判斷有麼有鞍點,所以我引進了乙個count來統計,count=0說明沒有。
定義0陣列 hash 長度為256;定義原陣列a;定義要刪除的元素的陣列b
-gets a b //輸入陣列a b
- for i=0 to
- hash[b[i]]++;//便曆要刪除的陣列,根據元素的ascii碼將hash陣列中的元從0變1
- end for
- for i=0 to
- if hash[a[i]]==0 then putchar(a[i]); //根據hash中的0/1判斷是否屬於要刪除的元素
1.用一般的方法不會處理這個題目
老師講了hash的方法後。才會用這個著名的方法去查詢要刪除的元素。然後判斷輸出就行
我的**:
同學**:
1.我是使用了2個開關分別判斷行列是否滿足。
同學的**是分別找出來滿足的行列座標,如果最後找出來的行座標和列座標都相同,說明這個元素都符合題意。就輸出行,列座標。
2.同學的**是用flag控制無鞍點的輸出。
我的**是使用了count的量來判斷是否有鞍點。
3.我覺得我的**比同學的更好理解。雖然思路大致相同,但是在複雜程度上,我的比他要簡單點。
2個開關分別控制。比尋找座標更加容易。
我的部落格作業4
問題與 all rights rwserved.完成日期 2014年11月23日 版本號 v1.0 寫乙個人品計算器,根據輸入姓名的unicode計算分值,然後輸出評價。注意!本程式僅供娛樂,此程式的評價毫無實際意義,如有冒犯,還請原諒 class program 3.將分數控制在100以內 sco...
C語言部落格作業4
恢復內容開始 一 本週教學內容 目標 第2章 用c語言編寫程式 迴圈結構 2.4 輸出華氏 攝氏溫度轉換表。要求學生掌握使用for迴圈語句實現指定次數的迴圈程式設計。這個作業屬於那個課程 c語言程式設計ii 這個作業要求在 我在這個課程的目標是 迴圈結構的熟練使用 這個作業在那個具體方面幫助我實現目...
C語言部落格作業 陣列
includeint main includeint main temp a i a i a h a h temp 替換最小項與i位置 2 氣泡排序法 多次檢視陣列,當出現前乙個項比後乙個項大時將該兩項替換,是每次迴圈都能是最大的乙個數移動到最末端,直到全部排序。輸入數字個數 輸入數字結果5 原來是...