1.定義變數i,j,k,n;且宣告i為要列印的行數,j是控制輸出列印空格和星星,n是菱形為菱形的高
2.輸入n
3.i=1,j=1
4.先列印上半部分,第一行到n/2+1行,輸出空格個數為n-2i+1,輸出的個數為2i-1換行,i++
5.i=n/2,i--
6.列印下半部分,第n/2+2行到第n行,輸出的空格個數為n+1-2i,輸出的個數為2i-1換行,j++
4.本題除錯過程碰到問題及pta提交列表情況說明。
剛開始的時候沒有想到說可以分析菱形的上下部分來控制輸出,所以寫出了以下的**
發現輸出的空格都沒有實現,後來改用老師的方法,先輸出上半部分,再輸出 下半部分
前面的空格公式錯誤,導致輸出錯誤,後來重新推導出正確的公式後,輸出正確
1.定義陣列 a[7]=存放紙幣型別
2.定義陣列b[7]=存放各型別紙幣的張數
3.定義整型變數 i,n;
4.scanf("%d",&n);
5.for(i=0;i<7;i++),初值表中依次放著陣列元素的初值
1.2 一維陣列在記憶體中結構?可畫圖說明。陣列名表示什麼?
在定義陣列之後,系統根據陣列中元素的型別及個數在記憶體中分配了一段連續的儲存單元用於存放陣列中的各個元素,並對這些單元進行連續編號,即下標,以區分不同的單元,每個單元所需的位元組數有陣列定義時給定的型別來確定;陣列名表示該陣列中第乙個單元的位址,即首位址
1.3 為什麼用陣列?
在程式中使用陣列,可以讓一批相同型別的變數使用同乙個陣列變數名,用下標來相互區分。它的優點是表達簡潔,可讀性好,便於使用迴圈
1.4 介紹選擇法、冒泡法、直接插入排序如何排序?偽**展示.
1.5 介紹什麼是二分查詢法?它和順序查詢法區別?
二分查詢(又稱為折半查詢)是在有序序列中查詢比較多的查詢演算法,基本思路:設有乙個從小到大的序列,取中間的元素m進行比較,如果等於需要查詢的元素x則返回元素m的下標,若x大於m則再從右邊的區間查詢,若x小於m則再從左邊的區間查詢,這樣每次減少一半的查詢範圍。時間複雜度為o(lgn),查詢速度相對順序查詢要快很多,但是查詢的資料序列必須是有序序列(即資料是從小到大或從大到小排序的)。
區別:二分法是折半查詢,而順序查詢則是歷便陣列的查詢,對於資料較多時,二分法查詢的效率更高
1.6 二維陣列如何定義、初始化?
二維陣列的定義形式為:
型別名 陣列名 [行長度] [列長度]
二維陣列的初始化方法有兩種:
1.分行賦初值
型別名 陣列名 [行長度] [列長度] = ,...,,...};把初值表k中的資料依次賦值給第k行的元素
1.7 矩陣轉置怎麼實現?方陣中:下三角、上三角、對稱矩陣的行標i列標j的關係?請說明。
行列互換;方陣中下三角:i>=j
上三角:i<=j
對稱矩陣:i=j
1.8 二維陣列一般應用在**?
用來表示乙個二維表中按行,列組織在一起的資訊。為了唯一確定二維表中的乙個元素,必須給出兩個下標。按照習慣,第乙個下標確定的是元素所在的行號,第二個列標確定元素所在的列號
2.本週的內容,你還不會什麼?
對於陣列的使用還不是很熟悉,還有二維陣列還不是很理解,各個進製之間的轉化還不是靈活的運用;
對於氣泡排序,選擇排序還不是很理解
課堂派上的題目
C語言部落格作業 資料型別
問題1 剛開始只是用兩個ch,有結果但是結果與答案不一樣 解決方法 在ch1,ch2後面加上printf,發現輸出結果為 1 6 就明白了沒有 大於10的字元 定義變數repeat 輸入幾位數字 count,count1 用於判斷結果 n 判斷結果 i 用於迴圈 ch 輸入repeat for i ...
C語言部落格作業 資料型別
1.本題pta提交列表 2.設計思路 輸出下半部分 for i n 2 i 0 i i 2 return 0 3.截圖 4.本題除錯過程碰到問題及pta提交列表情況說明1.本題pta提交列表 2.設計思路 迴圈結束再輸出一次 printf d d count,num1 結束 int trap int...
C語言部落格作業 資料型別
int 整型變數n,number提取每個位的數字,sum計算和,i,n,j 輸入nfor i 1 to 10000 i加一 sum n 3 1 if sum等於n 輸出i sum 且跳出迴圈,結束程式 否則輸出i sum 並使n sum int 整型變數money,thousand,fifty,tw...