第14、15教學周作業
要求二:
第14周第一次作業:7-3將數組中的數逆序存放:
1.實驗代碼:
#include<stdio.h> int main() { int i, n, swap, a[10]; scanf("%d", &n); for (i = 0; i < n; i++) scanf("%d", &a[i]); for (i = 0; i < n/2 ;i++) { swap = a[i]; a[i] =a[n-1-i]; a[n-1-i] = swap; }for (i = 0; i < n-1; i++) printf("%d ", a[i]); printf("%d\n", a[n-1]); return 0; }
2.設計思路:(1)第一步:引入數組啊a[n],以及循環增量i,數組存放的個數n和交換變量swap;
第二步:給這個數組賦值;
第三步:利用交換變量swap進行交換;
第四步:輸出結果;
(2)流程圖:
3.遇到的問題:①起初在這個問題上在編譯上沒有問題,只是在格式上出現問題,即對行末不出現空格的輸出不會,導致出現錯誤。
解決方法:我是通過上網百度找到的解決方法,通過先按如上的樣式輸出從i=0到i=n-2,在單個的輸出i=n-1是的值;
7-4 fibonacci數列:
1.實驗代碼:
#include <stdio.h> int main() { int i; int f[12] = {1, 1}; for ( i = 2; i < 12; i++ ) { f[i] = f[i - 1] + f[i - 2]; } for ( i = 0; i < 12; i++ ){ printf ( "%6d", f[i] ); if ( (i + 1) % 3 == 0 ) { printf("\n"); } } return 0; }
2.設計思路:(1)第一步:首先引入數組f[12],循環增量i,並賦給數組f[12]的前兩個值為1;
第二步:根據題意來求新的數組;
第三步:輸出這個新數組;
(2)流程圖:
3.遇到的問題:①本題老師上課講過,本題也不是不會編程,就是提交的時候有格式錯誤,之後按照老師給的原代碼打也是出現格式錯誤;
解決辦法:先把老師的原代碼直接復制粘貼在Dev-C++上,之後再根據題目要求進行修改才解決;
第15周第一次PTA作業 7-4數組元素循環右移問題:
1.實驗代碼:
#include<stdio.h> int main() { const int N=100; int a[N]; int i=0,m=0,n=0; scanf("%d %d",&n,&m); for(i=0;i<n;i++) { scanf("%d",&a[i]); } if(m<n) { for(i=(n-m);i<=(n-1);i++) { printf("%d ",a[i]); } for(i=0;i<(n-m-1);i++) { printf("%d ",a[i]); } printf("%d",a[n-m-1]); }else if(m>=n) { m=m%n; if(m==0) { for(i=0;i<n-1;i++) { printf("%d ",a[i]); } printf("%d",a[n-1]); }else if(m!=0) { for(i=(n-m);i<=(n-1);i++) { printf("%d ",a[i]); } for(i=0;i<(n-m-1);i++) { printf("%d ",a[i]); } printf("%d",a[n-m-1]); } } }
2.設計思路:(1)第一步:首先先定義一個數組a[N],以及循環增量i和要輸入的格式n和m;
第二步:根據題意先給這個數組賦值;
第三步:根據題意要使數組的元素右移,首先要分情況討論來判斷元素右移的個數,並註意結尾不能出現空格的情況;
第四步:以此由不同的情況來輸出結果;
(2)流程圖:
註:因流程圖太大,一個屏截不下來,所以我就截了兩個屏,有點錯位,望老師見諒!
3.遇到的問題:①考慮問題不全面,導致提交總是部分錯誤;由截圖可看出我起初只是考慮了m<n的一種情況;
錯誤代碼截圖:
解決辦法:①通過上網查了這個題的答案,從網上的各位大佬的答案來看我深刻的理解了這個題的題意,之後多加了幾種情況就解決了問題,雖然代碼很長,不想網上的大佬的那樣簡短,但我覺得我的還是簡單易懂的;
要求三:
上傳Git截圖:
Git地址:https://git.coding.net/GBL/ZY.git
要求四:
(1)學到的內容:本周我學到了數組的一些規律;例如:冒泡排序,選擇法排序,還有一些數組的簡單賦值;
(2)難點:數組的冒泡排序、選擇法排序的控制條件有時不能很快的想出,還有一些PTA上的結尾不出現空格,以及換行的要求等等都不太熟;
要求五:
1.點評的三位同學:
邀請點評的三位同學:
2.本周的學習進度:
第14、15教學周作業