C語言博客作業04--數組


1.本章學習總結

1.1 思維維導圖

1.2 本章學習體會及代碼量學習體會

1.2.1 學習體會

這周主要學習了數組,一維數組,二維數組和字符數組等,在一些基本的操作方面,如定義,引用等這三種數組並沒有太大的區別,只是不同數組稍微有點改變,就像字符數組中就加入了一個結束符‘\0’.除了有學到一些數組的基本應用,還學到了冒泡排序法和選擇法以及二分查找法等應用型方法。
隨着對C語言的深入學習,數組這一章還是蠻難的,雖然上課有認真聽課,大部分也能夠聽懂,但是課后做題也還是沒有頭緒,以后還是要多花時間在做題上。

1.2.2代碼累計

2.PTA總分

2.1三次題集分數截圖



2.2我的總分

一維數組得分:164分
二維數組得分:50分
字符數組的分:40分
總分:254分

3.PTA作業

3.1 題目一

本題要求編寫程序,將一個給定的整數插到原本有序的整數序列中,使結果序列仍然有序

3.1.1 算法分析

.定義i,j.x.n
.輸入n,定義數組a[n]
.for from i=0  to  i<n  then  do 
   輸入a[i];
.當a[i]<x且i<n時  do
    i++
.for from j=n-1  to  j>=i   then  do
   a[j+1]=a[j];
.把x賦給a[i]   a[i]=x;
.循環輸出新的序列a[i];
.end

3.1.2 代碼截圖

3.1.3 提交列表及分析

Q1:循環的結束點通常搞不懂在哪里
Q2:插入新的數之后,其后面的每個數的位置都會向右移動一個位置,不懂怎么用代碼表達出來

3.2 題目二

本題要求編寫程序,將給定字符串去掉重復的字符后,按照字符ASCII碼順序從小到大排序后輸出。

3.2.1 算法分析

.定義兩個字符數組 str1[N],str2[N];
  定義ch,temp;
 定義 len1=0;
 定義循環變量 i,j;
 定義 k=0,flag;
.輸入字符串   ch=getchar();
.for  from  i=0  to   ch!='\n'     then do
    str1[i]=ch;
    len1++;    //計算字符串長度
    ch=getchar();
.for  from  i=0  to  i<len1   then do
     flag=0;   //沒有重復字符時置flag=0;
     for  from  j=0  to  j<i   then do
           判斷:如果有相同字符  then do
                flag=1
           否則   str2[k++]=str1[i];
.使用冒泡排序法來排序
.for from i= to k-1  then do
      for from j=0  to  k-i-1  then do
            判斷str2的前一個數是否大於后一個數
            大於時交換位置  do     temp=str2[j];  str2[j]=str2[j+1];   str2[j+1]=temp;
.循環輸出str2[i]
.換行
.end

3.2.2 代碼截圖


3.2.3 提交列表及分析


Q:我的絕望已經體現在我長長的提交列表上了,一直部分正確是因為有很多的小問題沒有處理好
Q2:ASCII碼值的大小比較錯誤

3.3 題目三

本題要求編寫程序,將給定的n個整數存入數組中,將數組中的這n個數逆序存放,再按順序輸出數組中的元素。

3.3.1 算法分析

.定義n,i,j;
.定義count=0,以及兩個數組 a[10],b[10];
.輸入n
.for  from i=0  to  i<n  then do
      輸入n個數
.for  from j=n-1  to j>=0  then do
      b[count]=a[j];
       count++;
.循環輸出數組b[ ]
.end

3.3.2 代碼截圖

3.3.3 提交列表及分析


Q:這個題目比較簡單,一開始輸出的格式沒控制好,還沒發現;

4.代碼互評

4.1 代碼截圖

同學的代碼截圖


我的代碼截圖


4.2 二者異同

同:代碼行數都差不多
異:flag的使用不同;我定義了兩個flag,該同學定義了一個flag做變量;
我是使用的方法是先遍歷第一個數組,再遍歷第二個數組,看是否有相同的元素
該同學是把兩個數組的元素合並成為一串,再用flag判斷


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM