第二次部落格作業

2022-09-12 19:45:10 字數 1347 閱讀 6772

1:

目前我學習中存在的薄弱的知識點具體是結構體、共同體、列舉型別與指標。在近幾次的pta

練習中(大概是練習

8-練習

10)我常常被題目卡住,想到思路但是不知道應該怎麼寫下**。在結構體中具體的例子是定義結構體型別變數。

我一開始無法理解結構體型別與結構體型別變數的定義,導致對結構體成員引用出現錯誤。共用體和列舉型別則是因為很少運用於做題,對這兩者不夠熟悉,遇到需要運用共用體和列舉型別知識的題目就不知道應該怎麼做。例如書本141

頁例8.4

,我仍不能理解。我指標知識由於是新知識,仍然需要花時間去深入了解。在二維陣列與指標上仍要更多精力去鑽研。

2:7-1 陣列元素迴圈右移問題 (20 分)

乙個陣列a中存有n

(>0)個整數,在不允許使用另外陣列的前提下,將每個整數迴圈向右移m(

≥0)個位置,即將

a中的資料由(

a​0​​a​1​​⋯a​n−1​​

)變換為(

a​n−m​​⋯a​n−1​​a​0​​a​1​​⋯a​n−m−1​​

)(最後

m個數迴圈移至最前面的

m個位置)。如果需要考慮程式移動資料的次數盡量少,要如何設計移動的方法?

① 題目大意是要移動乙個陣列裡面的數字,改變他們的位置。

② 題目分兩種情況,其中要考慮n>m/n。

#include

#include

using namespace std;

int main()

int a[100],b,c,i;

cin>>b>>c;

if(b>c)

for(i=0;icin>>a[i];

{if(b==1&&c==0) coutb)

int d;

d=c-b;

for(i=0;icin>>a[i];

coutfor(i=0;icout<④ 其中最重要的一點就是找出數字移動前後下標的關係。

n>m時,如果

i+m(

i為下標)大於或等於

n,則數字移動到下標為

i+m除以

n的餘數的位置上。否則數字移動到下標為

i+m的位置上。

n時,設k為

m除以n的餘數,如果

i+k(

i為下標)大於或等於

n,則數字移動到下標為

i+k除以

n的餘數的位置上。否則數字移動到下標為

i+k的位置上。

⑤ 問題最大的就是找出數字移動前後的下標之間的關係,要先用白紙設一組陣列來找尋他們之間的關係會比較清晰。只要找到了兩者的關係題目就很容易了,但是寫成**需要時間思考一下。

部落格第二次作業

一.命令列萬用字元 1.匹配任意長度的任意字元 2.匹配任意單個字元 3.匹配指定範圍內的任意單個字元 4.匹配指定範圍外的任意單個字元 5.upper 所有的大寫字母 eg 列出 etc下,所有的以n,l開頭的,並且以非數字結尾的檔案 列出 var目錄下,以乙個小寫字母開頭,乙個小寫字母結尾,中間...

第二次部落格作業

目錄2.pta實驗作業 int i char c for i 0 i 10 i stand time 0 初始化隨機數 rand 100 隨機產生0 99的隨機數 1 每次召喚 rand 就得到乙個隨機整數。include include include int main 2 x n的結果是 0,n...

OO第二次部落格作業

從第4次作業開始,就進入了多執行緒程式設計的環節。我個人對於多執行緒的理解就是在乙個程式在執行時有多個執行流,能夠實現多個執行緒併發執行的技術。由於能在同一時間內執行多個執行緒,因而能夠提公升計算機的整體處理效能。第五次作業分析 由於第五次作業是我第一次接觸到多執行緒程式設計,因此這次作業對於我來說...