日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

2019春第十二周 编程总结

發(fā)布時間:2023/12/8 编程问答 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 2019春第十二周 编程总结 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

一、作業(yè)頭內(nèi)容

這個作業(yè)屬于那個課程C語言程序設(shè)計(jì)II
這個作業(yè)要求在哪里C語言作業(yè)評價標(biāo)準(zhǔn)
我在這個課程的目標(biāo)是學(xué)習(xí)二級指針的概念;掌握指針數(shù)組的應(yīng)用方法;理解指針與函數(shù)的關(guān)系,學(xué)習(xí)指針作為函數(shù)返回值的運(yùn)用。
這個作業(yè)在那個具體方面幫助我實(shí)現(xiàn)目標(biāo)能更好的消化理論課上學(xué)習(xí)的指針進(jìn)階,像加強(qiáng)對函數(shù)指針和指針函數(shù)的理解。
參考文獻(xiàn)C語言頭文件#include<stdlib.h>的作用 ; typedef語法 ; C語言程序設(shè)計(jì) 。

二、基礎(chǔ)作業(yè):

PTA:

1.函數(shù)題:計(jì)算最長的字符串長度: 2.函數(shù)題:統(tǒng)計(jì)專業(yè)人數(shù): 3.函數(shù)題:刪除單鏈表偶數(shù)結(jié)點(diǎn):

第一題:

(1、6-1 計(jì)算最長的字符串長度

本題要求實(shí)現(xiàn)一個函數(shù),用于計(jì)算有n個元素的指針數(shù)組s中最長的字符串的長度。

函數(shù)接口定義:

int max_len( char *s[], int n );

其中n個字符串存儲在s[]中,函數(shù)max_len應(yīng)返回其中最長字符串的長度。

裁判測試程序樣例:

#include <stdio.h> #include <string.h> #include <stdlib.h>#define MAXN 10 #define MAXS 20int max_len( char *s[], int n );int main() {int i, n;char *string[MAXN] = {NULL};scanf("%d", &n);for(i = 0; i < n; i++) {string[i] = (char *)malloc(sizeof(char)*MAXS);scanf("%s", string[i]);}printf("%d\n", max_len(string, n));return 0; }/* 你的代碼將被嵌在這里 */

輸入樣例:

4 blue yellow red green

輸出樣例:

6
(2、程序代碼:
int max_len( char *s[], int n ) {int i=0,m=0;for(;i<n;i++){if( strlen(s[m]) < strlen(s[i]) ){m=i; }} return strlen(s[m]); }
(3、設(shè)計(jì)思路,流程圖:

(4、本題調(diào)試過程碰到的問題及解決辦法。

錯誤截圖:

問題:

提示返回值未聲明,經(jīng)檢查發(fā)現(xiàn)在for循環(huán)內(nèi)定義也只在for循環(huán)里有效。

解決辦法:

將要作為返回值得定義變量放置for循環(huán)外即可。

(5、程序運(yùn)行結(jié)果的截圖或者效果錄像。

正確截圖:

第二題:

(2、6-2 統(tǒng)計(jì)專業(yè)人數(shù)

本題要求實(shí)現(xiàn)一個函數(shù),統(tǒng)計(jì)學(xué)生學(xué)號鏈表中專業(yè)為計(jì)算機(jī)的學(xué)生人數(shù)。鏈表結(jié)點(diǎn)定義如下:

struct ListNode {char code[8];struct ListNode *next; };

這里學(xué)生的學(xué)號共7位數(shù)字,其中第2、3位是專業(yè)編號。計(jì)算機(jī)專業(yè)的編號為02。

函數(shù)接口定義:

int countcs( struct ListNode *head );

其中head是用戶傳入的學(xué)生學(xué)號鏈表的頭指針;函數(shù)countcs統(tǒng)計(jì)并返回head鏈表中專業(yè)為計(jì)算機(jī)的學(xué)生人數(shù)。

裁判測試程序樣例:

#include <stdio.h> #include <stdlib.h> #include <string.h>struct ListNode {char code[8];struct ListNode *next; };struct ListNode *createlist(); /*裁判實(shí)現(xiàn),細(xì)節(jié)不表*/ int countcs( struct ListNode *head );int main() {struct ListNode *head;head = createlist();printf("%d\n", countcs(head));return 0; }/* 你的代碼將被嵌在這里 */

輸入樣例:

1021202 2022310 8102134 1030912 3110203 4021205 #

輸出樣例:

3
(2、實(shí)驗(yàn)代碼:
int countcs( struct ListNode *head ) {int sum = 0;struct ListNode *p=head;while(p != NULL){if(p->code[1] == '0' && p->code[2] == '2')sum++;p = p->next;}return sum; }
(3、設(shè)計(jì)思路,流程圖:

(4、本題調(diào)試過程碰到的問題及解決辦法。

錯誤截圖:

問題:

在相關(guān)應(yīng)用程序中提示語句錯誤,語句“struct ListNode *head=p;”有誤;原因是單鏈表的基本操作出錯。

解決辦法:

將語句修改為“struct ListNode *p=head;”。

(5、程序運(yùn)行結(jié)果的截圖或者效果錄像。

正確截圖:

第三題:

(3:題目:6-3 刪除單鏈表偶數(shù)節(jié)點(diǎn)

本題要求實(shí)現(xiàn)兩個函數(shù),分別將讀入的數(shù)據(jù)存儲為單鏈表、將鏈表中偶數(shù)值的結(jié)點(diǎn)刪除。鏈表結(jié)點(diǎn)定義如下:

struct ListNode {int data;struct ListNode *next; };

函數(shù)接口定義:

struct ListNode *createlist(); struct ListNode *deleteeven( struct ListNode *head );

函數(shù)createlist從標(biāo)準(zhǔn)輸入讀入一系列正整數(shù),按照讀入順序建立單鏈表。當(dāng)讀到?1時表示輸入結(jié)束,函數(shù)應(yīng)返回指向單鏈表頭結(jié)點(diǎn)的指針。
函數(shù)deleteeven將單鏈表head中偶數(shù)值的結(jié)點(diǎn)刪除,返回結(jié)果鏈表的頭指針。

裁判測試程序樣例:

#include <stdio.h> #include <stdlib.h>struct ListNode {int data;struct ListNode *next; };struct ListNode *createlist(); struct ListNode *deleteeven( struct ListNode *head ); void printlist( struct ListNode *head ) {struct ListNode *p = head;while (p) {printf("%d ", p->data);p = p->next;}printf("\n"); }int main() {struct ListNode *head;head = createlist();head = deleteeven(head);printlist(head);return 0; }/* 你的代碼將被嵌在這里 */

輸入樣例:

1 2 2 3 4 5 6 7 -1

輸出樣例:

1 3 5 7
(2、程序代碼:
typedef struct ListNode *s; struct ListNode *createlist() {s head=NULL, tail=NULL;int n;scanf("%d",&n);while(n != -1){s q = (s)malloc(sizeof(struct ListNode));q->data = n;q->next = NULL;if(tail==NULL)head = tail = q;else{tail->next = q;tail = q;}scanf("%d",&n);}return head; }struct ListNode *deleteeven( struct ListNode *head ) {s newhead=NULL,p=head,tail;while(p){if(p->data%2==1){s q = (s)malloc( sizeof(struct ListNode) );q->data = p->data;q->next = NULL;if(newhead==NULL)newhead = tail = q;else{tail->next = q;tail = q;}}p = p->next;}return newhead; }
(3、設(shè)計(jì)思路,流程圖:

(4、本題調(diào)試過程碰到的問題及解決辦法

錯誤截圖:

問題:

通過PTA反饋提示運(yùn)行超時;而相關(guān)應(yīng)用程序中檢測顯示程序代碼正確,表明邏輯應(yīng)該正確。

解決辦法:

只能通過調(diào)試去設(shè)立斷點(diǎn)與根據(jù)數(shù)值變化,來判斷問題所在,在修改數(shù)據(jù)。

(5、程序運(yùn)行結(jié)果的截圖或者效果錄像。

正確截圖:


三、挑戰(zhàn)作業(yè):

PTA:

1.編程題:八皇后問題(用遞歸法)實(shí)現(xiàn) 2.編程題:求迷宮最短通道
(1:題目:7-1 ***八皇后問題

在國際象棋中,皇后是最厲害的棋子,可以橫走、直走,還可以斜走。棋手馬克斯·貝瑟爾 1848 年提出著名的八皇后問題:即在 8 × 8 的棋盤上擺放八個皇后,使其不能互相攻擊 —— 即任意兩個皇后都不能處于同一行、同一列或同一條斜線上。

現(xiàn)在我們把棋盤擴(kuò)展到 n × n 的棋盤上擺放 n 個皇后,請問該怎么擺?請編寫程序,輸入正整數(shù) n,輸出全部擺法(棋盤格子空白處顯示句點(diǎn)“.”,皇后處顯示字母“Q”,每兩格之間空一格)。

輸入格式:

正整數(shù) n (0 < n ≤ 12)

輸出格式:

若問題有解,則輸出全部擺法(兩種擺法之間空一行),否則輸出 None。

要求:試探的順序逐行從左往右的順序進(jìn)行,請參看輸出樣例2。

輸入樣例1:

3

輸出樣例1:

None

輸入樣例2:

6

輸出樣例2:

. Q . . . . . . . Q . . . . . . . Q Q . . . . . . . Q . . . . . . . Q .. . Q . . . . . . . . Q . Q . . . . . . . . Q . Q . . . . . . . . Q . .. . . Q . . Q . . . . . . . . . Q . . Q . . . . . . . . . Q . . Q . . .. . . . Q . . . Q . . . Q . . . . . . . . . . Q . . . Q . . . Q . . . .
(2、程序代碼:
#include <stdio.h> #include <math.h> int abc(int k); int def(int k); int hij(int i); #define N 12 //N代表n皇后,其中正整數(shù) n (0 < n ≤ 12); int x[N], n, m=0, num=0; //n代表階數(shù) 或 皇后個數(shù) ;num代表存在的“全部擺法 ”的個數(shù) ;//m主要為可行解是否存在; //以上變量與數(shù)組全為“全局變量 ” ; int main (void) {scanf("%d",&n);num=abc(1);if(m==0)printf("None");return 0; }int abc(int k) {if(k>n){m=1;num++;hij(1); }elsefor(int i=1;i<=n;i++){x[k]=i;if(def(k))abc(k+1);}//m=1;return num; }int def(int k) {for(int i=1;i<k;i++)if(abs(k-i)==abs(x[k]-x[i])||x[k]==x[i])return 0;return 1; }int hij(int i) {if(num==1){for(int j;i<=n;i++){for(j=1;j<x[i];j++) printf(". ");printf("Q");for(j=x[i]+1;j<=n;j++) printf(" .");printf("\n");}}else //if(num>1){printf("\n");for(int j;i<=n;i++){for(j=1;j<x[i];j++) printf(". ");printf("Q");for(j=x[i]+1;j<=n;j++) printf(" .");printf("\n");}}}
(3、設(shè)計(jì)思路,流程圖:

(4、本題調(diào)試過程碰到的問題及解決辦法

錯誤截圖:

問題:

PTA上全提示格式錯誤部分正確;而實(shí)驗(yàn)代碼邏輯符合題意;結(jié)果也正確,問題是結(jié)尾部分總是多出一行在PTA上不符合格式要求。

解決辦法:

通過提示,針對方向?yàn)閷?shí)驗(yàn)代碼的格式,猜想問題出在換行符;由函數(shù)反復(fù)遞歸,代碼執(zhí)行解讀來太抽象,邏輯設(shè)計(jì)需調(diào)試可得出改進(jìn)思路,要修改為結(jié)尾的兩行;重新設(shè)計(jì)輸出時格式,首先可先輸出第一次后面按規(guī)則輸出即可。

(5、程序運(yùn)行結(jié)果的截圖或者效果錄像。

正確截圖:

(2:題目:7-2 求迷宮最短通道
  • 遞歸求解迷宮最短通道的總步長。
  • 輸入一個迷宮,求從入口通向出口的可行路徑中最短的路徑長度。
  • 為簡化問題,迷宮用二維數(shù)組 int maze[10][10]來存儲障礙物的分布,假設(shè)迷宮的橫向和縱向尺寸的大小是一樣的,并由程序運(yùn)行讀入, 若讀入迷宮大小的值是n(3<n<=10),則該迷宮橫向或縱向尺寸都是n,規(guī)定迷宮最外面的一圈是障礙物;
  • 迷宮的入口是maze[1][1],出口是maze[n-2][n-2], 若maze[i][j] = 1代表該位置是障礙物,若maze[i][j] = 0代表該位置是可以行走的空位(0<=i<=n-1, 0<=j<=n-1)。求從入口maze[1][1]到出口maze[n-2][n-2]可以走通的路徑上經(jīng)歷的最短的總步長。
  • 要求迷宮中只允許在水平或上下四個方向的空位上行走,走過的位置不能重復(fù)走。

輸入格式:

輸入迷宮大小的整數(shù)n, 以及n行和n列的二維數(shù)組(數(shù)組元素1代表障礙物,0代表空位)

輸出格式:

若有可行的通道則輸出一個整數(shù),代表求出的通道的最短步長;若沒有通道則輸出`"No solution"`。

輸入樣例:

10 1 1 1 1 1 1 1 1 1 1 1 0 0 1 0 0 0 1 0 1 1 0 0 1 0 0 0 1 0 1 1 0 0 0 0 1 1 0 0 1 1 0 1 1 1 0 0 0 0 1 1 0 0 0 1 0 0 0 0 1 1 0 1 0 0 0 1 0 0 1 1 0 1 1 1 0 1 1 0 1 1 1 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 上述輸入代表的是如下這樣一個迷宮:

其中紅色的小方塊是障礙物,藍(lán)色的小方塊是空位,白色的小圓連起來是一條從入口到出口的通道,兩個圓之間代表一個步長。

輸出樣例:

14
(2、程序代碼:
#include<stdio.h> #define M 10 struct P {int x; int y; };int m[M][M],n,z = 10000; struct P b; struct P d[4]={{0,1},{1,0},{0,-1},{-1,0}};void Try(struct P c,int t) {int i;struct P q; // 下一個位置 for(i=0;i<=3;i++) // 動方向,依次為東南西北;依次試探下左上右四個方向{q.x=c.x+d[i].x;q.y=c.y+d[i].y;if(m[q.x][q.y] == 0) // 是通路{m[q.x][q.y]=++t;if(q.x != b.x || q.y != b.y) // 沒到終點(diǎn)Try(q,t); // 試探下一點(diǎn)(遞歸調(diào)用)elsez = z>t?t:z; m[q.x][q.y]=0; // 恢復(fù)為通路,試探下一條路t--;}}return; }int main(void) {struct P h; //起點(diǎn)int i,j;while(scanf("%d",&n)!=EOF)for(i=0;i<n;i++)for(j=0;j<n;j++)scanf("%d",*(m+i)+j); //二維數(shù)組的指針調(diào)用h.x = 1,h.y=1;b.x = n-2,b.y= n-2;m[h.x][h.y]=2;Try(h,0); // 由第一步起點(diǎn)試探起if(z == 10000)printf("No solution");elseprintf("%d",z);return 0; }
(3、設(shè)計(jì)思路:
給定一個迷宮,此迷宮中有且僅有一個入口和出口,其中設(shè)有若干檢查點(diǎn),要求從入口開始,經(jīng)過所有檢查點(diǎn)后到達(dá)出口所需的最短路徑。其中路徑中允許多次經(jīng)過入口或出口或某檢查點(diǎn),但路徑的開始和結(jié)尾必須分別是入口和出口。更形象一點(diǎn)就是要把圖中所有的寶藏找出來帶出去的問題。算法的核心描述就是先假設(shè)已經(jīng)有一個最優(yōu)路徑,然后插入一個新的檢查點(diǎn)時,如何使插入導(dǎo)致的路徑增量最小。這種先假設(shè)存在最優(yōu)路徑然后再在這條假設(shè)的路徑中插入新的結(jié)點(diǎn)的思想其實(shí)就是貪心算法,出現(xiàn)在很多算法當(dāng)中,并且十分行之有效,其基本模型就是持有兩個關(guān)鍵集合,根據(jù)條件改變集合元素來動態(tài)規(guī)劃集合中元素的組織方式。此題中的尋寶算法十分類似于貨郎擔(dān)問題,區(qū)別在于,貨郎在尋找旅行路線時不能經(jīng)過已經(jīng)走過的城市,且最終要回到出發(fā)點(diǎn),而這里的模型是可以經(jīng)過已經(jīng)走過的城市,但最終不是要回到出發(fā)點(diǎn),而是以達(dá)到一個指定點(diǎn)結(jié)束。但本質(zhì)上都需要兩個動態(tài)集合來保存這些代表地點(diǎn)的結(jié)點(diǎn)。貨郎擔(dān)問題相對于此問題的簡單之處表現(xiàn)在其不重復(fù)的特點(diǎn)上,因?yàn)椴恢貜?fù),所以每個結(jié)點(diǎn)必有單前驅(qū)與單后繼,集合中元素都不相同,組合起來就很簡單。而此問題由于可以多次經(jīng)過同一個節(jié)點(diǎn),所以在一條路徑上就存在多個相同的結(jié)點(diǎn),這就導(dǎo)致了同一結(jié)點(diǎn)有多前驅(qū)或多后繼的問題。本問題解決的關(guān)鍵就是要解決這種多前驅(qū)與多后繼的問題,也就是要決定同一結(jié)點(diǎn)如何在集合中表現(xiàn)出多種身份的方式。我在設(shè)計(jì)此算法時,到此便知道這就是問題的核心了,最終想到的辦法就是為多前驅(qū)或多后繼的結(jié)點(diǎn)建立多個虛擬結(jié)點(diǎn),這些虛擬結(jié)點(diǎn)實(shí)質(zhì)上共享同一個位置,但卻分別有著不同的前驅(qū)與后繼,因此可以構(gòu)成一條完成的路線。然后問題就轉(zhuǎn)移到如何在兩個集合中標(biāo)識這些虛擬結(jié)點(diǎn)的身份了。剩下的問題不再是難題,除了需要計(jì)算在插入新結(jié)點(diǎn)時如何查找最優(yōu)插入?yún)^(qū)間、如何計(jì)算插入后帶來的代價增量、如何決定是采用正常插入模式還是采用創(chuàng)建新的虛擬結(jié)點(diǎn)的插入方式等問題了。其中用到了算法導(dǎo)論一書中介紹的“三角不等式(兩邊之和大于第三邊,兩邊之差小于第三邊)”原理來計(jì)算和比較代價增量。最后,如設(shè)計(jì)算法時所描述,這其實(shí)是通過一個循環(huán)就可以實(shí)現(xiàn)四方向移動的遍歷。

引用:程序設(shè)計(jì):迷宮的最短路徑

(4、本題調(diào)試過程碰到的問題及解決辦法

錯誤截圖:

問題:

該代碼借鑒c++類型,用c語言求解難免不對型,故出錯。

解決辦法:

了解和借鑒其思路改寫為C語言型的代碼,利用已學(xué)知識進(jìn)行編寫新代碼。

(5、程序運(yùn)行結(jié)果的截圖或者效果錄像。

正確截圖:

挑戰(zhàn)題的算法上有些什么新的想法和改進(jìn)?

首先,遞歸算是入門,已經(jīng)較為清晰的理解與學(xué)會遞歸;按我的理解,遞歸用一個形象的比喻,就是查詞典。我們查詞典的過程,本身就是遞歸。想象用一本純英文詞典查單詞,要查某一個單詞的意思,翻到這個單詞時,看解釋,發(fā)現(xiàn)解釋中有一個單詞不認(rèn)識,所以,無法明白這個要查的單詞是什么意思;這時,再用這本詞典(函數(shù)本身)查那個不認(rèn)識的單詞,又發(fā)現(xiàn)查的第2個單詞的解釋中又有一個單詞不認(rèn)識,那么,又再用這本詞典查第3個不認(rèn)識的單詞,這樣,一個一個查下去,直到解釋中所有單詞都認(rèn)識,這樣就到底了,就明白了最后一個單詞是什么意思,然后一層一層`倒回來`,就知道我最初想查的第1個單詞是什么意思了,其中也可能不會直接就順利的一層層倒回來,其中可能繼續(xù)在某一基礎(chǔ)上繼續(xù)要去查其他的單詞,在返回那一層,直到返回到初始想知道的單詞,問題就解決了。第二,對n皇后的流程圖進(jìn)行新的制作,更加詳細(xì)一些,代碼本就完善的較好了所以未做修改。第三,對第二題的挑戰(zhàn)題《求迷宮最短通道》,上次是借用c++的編程環(huán)境和函數(shù)進(jìn)行引用的代碼,這周編寫為c語言型代碼,更能助于理解和學(xué)習(xí)。
我向哪些同學(xué)進(jìn)行了挑戰(zhàn)題的講解和我是如何講解的?

暫無。


四、預(yù)習(xí)作業(yè):

從第十三周開始,將進(jìn)入課程設(shè)計(jì)階段,在本次作業(yè)中給出:

1.所在小組想要開發(fā)的項(xiàng)目的名稱和目標(biāo);

根據(jù)一定程度上C語言基礎(chǔ),小組討論決定制作的小游戲名稱被命名為《小鬼戰(zhàn)斗機(jī)》的飛行游戲,
目標(biāo):軟件能順利運(yùn)行,能靈活控制。

2.項(xiàng)目主體功能的描述;

1、頁面初始化;
2、按規(guī)律發(fā)射子彈;
3、敵機(jī)移動;
4、自動產(chǎn)生新敵機(jī);
……

3.現(xiàn)階段已做的準(zhǔn)備工作;

參考資料:《C語言課程設(shè)計(jì)與游戲開發(fā)實(shí)踐教程》;
……

4.小組成員名單和進(jìn)度安排。(課程設(shè)計(jì)階段:13-17周)

組員:陳小強(qiáng)、鄧 鵬。
安排:先了解軟件制作的流程。
……

五、學(xué)習(xí)進(jìn)度統(tǒng)計(jì)和學(xué)習(xí)感悟 :

1)、進(jìn)度條:

2)、學(xué)習(xí)進(jìn)度表:
第N周日 期這周花的時間代碼行數(shù)學(xué)到的知識點(diǎn)簡介目前比較迷惑的問題
第十二周5/13-/18計(jì)12小時480指針進(jìn)階:指針數(shù)組,數(shù)組指針,指針函數(shù),函數(shù)指針全局變量中靜態(tài)變量與動態(tài)變量不太清楚
第十一周5/5-/10計(jì)9小時580多函數(shù)結(jié)構(gòu);遞歸函數(shù);宏;編譯譯預(yù)處理的概念--
第十周4/28-5/4計(jì)16小時110結(jié)構(gòu)指針--
第九周4/22-/26計(jì)14小時360結(jié)構(gòu)指針的概念、結(jié)構(gòu)指針作為函數(shù)參數(shù)--
第八周4/15-/19計(jì)13小時150動態(tài)內(nèi)存分配,字符指針--
第七周4/8-/11計(jì)11小時520復(fù)習(xí)冒泡排序法;詳解指針、數(shù)組與地址間的關(guān)系;指針之間的運(yùn)算--
第六周3/29-4/5計(jì) 9小時390指針變量的初始化、指針作為函數(shù)參數(shù)、指針變量的賦值與運(yùn)算--
第五周3/25-/28計(jì) 8小時200字符串的基本概念、操作方法--
第四周3/18-/22計(jì) 8小時400冒泡排序法、選擇排序法、二維數(shù)組--
第三周3/11-/16計(jì) 4小時150指針、二維數(shù)組--
3)、學(xué)習(xí)感悟:
(1)本周你學(xué)習(xí)哪些內(nèi)容(不限于課上)?你有哪些收獲?
主要學(xué)習(xí)為指針進(jìn)階部分,通過課堂學(xué)習(xí)和例題分析,其中更深刻的理解指針數(shù)組、數(shù)組指針與指針函數(shù),和函數(shù)指針有了初步了解。
(2)本周所學(xué)內(nèi)容中你覺得哪些地方是難點(diǎn)?對此你做了哪些措施去克服這些困難?
我認(rèn)為較難的在于數(shù)組指針和指針數(shù)組的區(qū)別,首先數(shù)組指針的定義可以為: int (*p)[n];而指針數(shù)組的定義是 int *p[n];兩者看似相差一個括號卻優(yōu)先級不同,含義有很大的差別,數(shù)組指針只是一個指針變量,似乎是C語言里專門用來指向二維數(shù)組的,它占有內(nèi)存中一個指針的存儲空間。指針數(shù)組是多個指針變量,以數(shù)組形式存在內(nèi)存當(dāng)中,占有多個指針的存儲空間。

六、結(jié)對編程感受:

1)、過程:
本周的編程作業(yè)基礎(chǔ)題都是先理解題目給出的程序代碼在根據(jù)題目要求補(bǔ)寫自定義函數(shù);以完善程序;我們先一起討論各自對已有代碼的解讀,再設(shè)計(jì)邏輯,因?yàn)橛行┙夥ê芏嗟謴?fù)雜,且思路形象來表達(dá)簡單,可以很好的進(jìn)行建立各自觀點(diǎn),再對代碼脈絡(luò)進(jìn)行編寫與修改; 兩人一起編寫代碼,再通過相關(guān)軟件運(yùn)行進(jìn)行檢查代碼,有問題一起檢查與修改。 最后,進(jìn)行討論,對問題理解清晰、相對簡單的題目談?wù)摬煌悸贰?
2)、照片:

3)、看法:
一起結(jié)對編程是真的可以節(jié)省時間與提高效率。

轉(zhuǎn)載于:https://www.cnblogs.com/youlanghua/p/10857299.html

總結(jié)

以上是生活随笔為你收集整理的2019春第十二周 编程总结的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。