C語言部落格作業--資料類型

來源:互聯網
上載者:User

標籤:sum   二分   for   資料類型   速度   二維   掌握   判斷   字元變數   

一、PTA實驗作業題目1:7-6 掉入陷阱的數字1. 本題PTA提交列表

2. 設計思路
  • 1.定義輸入的變數N,輸出次數i,判斷變數x,以及第一組J
  • 2.輸入N,並給i附上初始值0,計算第一次的J
  • 3.利用do-while(x!=J)迴圈迴圈內
    每一次i++,
    輸出i,J
    並使x=J
    J=SKT(x);//調用函數
  • 4.//若輸入的不為陷阱數則需要輸出i+1
    printf("%d:%d\n",i+1,J);}
    自訂函數:(實現 先將其各位元字相加求和,再將其和乘以3後加上1,變成一個新自然數N)
  • 1.定義變數x為輸入的值,sum以及N為返回主函數的值
  • 2.利用while(N!=0){
    取出各個位元字
    累加到sum
    將sum*3+1給N
    將N返回主函數

    3.代碼

    4.本題調試過程碰到問題及PTA提交列表情況說明。


    不能進入下一次的迴圈,在迴圈外給i附上初值,給J求出第一次的值再進入迴圈即可
    列表部分正確僅為第一次的結果。

    題目2:7-7 發紅包1. 本題PTA提交列表

    2. 設計思路
  • 1.分別定義abcedfg用於表示各個面額的張數,x為金額數
  • 2.輸入x
  • 3.分別計算
    a=x/100;//求100元張數
    b=(x-a100)/50;//50元的張數
    c=(x-a
    100-b50)/20;//20元的張數
    d=(x-a
    100-b50-c20)/10;//10元的張數
    e=(x-a100-b50-c20-d10)/5;//5元的張數
    f=(x-a100-b50-c20-d10-e5)/2;//2元的張數
    g=(x-a
    100-b50-c20-d10-e5-f*2)/1;//1元的張數
  • 4.按格式輸出面額及張數

    3.代碼

    4.本題調試過程碰到問題及PTA提交列表情況說明

    調試過程沒遇到什麼問題,
    PTA提交顯示格式錯誤,為沒有控制數字個位對齊

    題目3:7-10 簡單計算機1. 本題PTA提交列表

    2. 設計思路
  • 1.定義字元變數ch
  • 2.定義x=0作為判斷變數n為輸入的值,i為每次運算的中間值
  • 3.利用while(ch!=‘=‘)迴圈,再迴圈內輸入n以及字元利用if-else if語句選擇運算式,再除法運算時若除數為0則將x=1並break
  • 4.若有非法運算子x=1
  • 5.x!=1輸出i若x==1輸出ERROR

    3.代碼

    4.本題調試過程碰到問題及PTA提交列表情況說明。


    沒有對除數為零以及非法運算子的情況進行判斷

    二、本周題目集的PTA最後排名。

    三、本周學習總結1.你學會了什嗎?1.1 一維數組如何定義、初始化?

    一維數組定義,需要明確陣列變數名,數組元素類型和數組的大小,其一般形式為: 類型名 變數名 [數組長度]
    數組的初始化可以再定義數組時,對數組元素賦初值,其一般形式為:類型名 變數名 [數組長度]={初值表}(可以只針對部分元素)

    1.2 一維數組在記憶體中結構?可畫圖說明。數組名表示什嗎?

    結構如課本150頁圖7.2所示
    數組名表示該數組所分配連續記憶體空間中第一個單元的地址

    1.3 為什麼用數組?

    數組可以使一組相同類型資料有序排列,並且連續存放,使用方便。

    1.4 介紹選擇法、冒泡法、直接插入排序如何排序?虛擬碼展示.選擇法:
  • 1.對數組的n個元素附上初值
  • 2.利用for對n個元素進行排序
  • 3.a[i]<a[min]則將兩值交換
  • 4.將a[min]返回
    冒泡法:
  • 1.定義變數a[10],i,j,k
  • 2.一次將數輸入數組
  • 3.對n個數排序,for(k=0;k<n-1;k++) max=k
  • 4.輸出n個數組元素的值
    直接插入法:
  • 1.從第二個數開始
  • 2.如果比前一個數小,交換到前一個位置
  • 3.重複2,直到該數前面沒數字或者前面的數比它大

    1.5 介紹什麼是二分尋找法?它和順序尋找法區別?

    二分尋找法:先確定該區間的中點位置,將待查的x值與a[mid]比較,若相等,則尋找成功並返回此位置,若a[mid]>x,則新的尋找區間是a[1..mid-1]若a[mid]<x,則新的尋找區間是a[mid+1..n]
    二分尋找法適用於排序過的數組,不必將每一個元素都進行比較,速度快,順序尋找法要遍曆數組

    1.6 二維數組如何定義、初始化?

    定義:類型名 數組名 [行長度][列長度]
    初始化:分行賦初值:int a [3] [3] ={ { 1,2,3} , {4,5,6} ,{7,8,9} } 順序賦初值: int a [3] [3] = {1,2,3,4,5,6,7,8,9}

    1.7 矩陣轉置怎麼實現?方陣中:下三角、上三角、對稱矩陣的行標i列標j的關係?請說明。

    對角線上元素不變,其餘元素兩個下標互換
    上三角:i<=j
    下三角:i>=j
    對稱矩陣:a[i][j]==a[j][i]

    1.8 二維數組一般應用在哪裡?

    矩陣,表

    2.本周的內容,你還不會什嗎?

    對於二維數組的部分極不熟悉,考試題中一些基本的概念性的問題,以及對於手寫代碼,考試發現對於函數部分的知識仍舊掌握不牢固。對於數組只是知道其基本的概念,涉及到應用程式層面的問題就涼涼了。PTA中一些需要判斷的問題,沒能第一時間想出判斷的方法有時還忘記去判斷。對於一些題目的本意有的也不太理解。

C語言部落格作業--資料類型

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.