第四周總結

第四周作業

這次作業屬于哪個課程C語言程序設計
這個作業要求在哪里第四周作業
我的課程目標全部學會
這個作業在那個具體方面幫助我實現目標深入了解二維數組
參考文獻教科書

一,基礎作業

程序填空題5-1

輸入一個正整數 n (1≤n≤10)和n 階方陣a的元素,如果方陣a中的所有元素都沿主對角線對稱,輸出“Yes”, 否則,輸出“No”。主對角線為從矩陣的左上角至右下角的連線,方陣a中的所有元素都沿主對角線對稱指對所有i, k,a[i][k]和a[k][i]相等。輸入輸出示例如下:

#include <stdio.h>
int main ()
{int i,k,a[10],b,c,n;scanf("%d",&n);for (i=0;i<n;i++) {scanf("%d",&a[i]);}for(k=0;k<n-1;k++) {c=k;for (i=k+1;i<n;i++) {if(a[i]<a[c]){c=i;b=a[c];a[c]=a[k];a[k]=b;}}}for (i=n-1;i>0;i--) {printf("%d",a[i]);}printf("%d",a[0]);return 0;
}

流程圖

1580673-20190322170756569-1692998961.jpg

本題調試遇到的問題及其解決方法

問題1,代碼的前部分是在從小到大排數字,而題目是從大到小輸出數字

解決方法,在輸入數組時,可以從后往前輸出!

問題2,題目要求輸出的數字行末不得有多余的空格

解決方法,最后一個數字單獨輸出!

截圖

1580673-20190322163655671-1052019434.png

程序設計題7-1

找鞍點 (20 分)

一個矩陣元素的“鞍點”是指該位置上的元素值在該行上最大、在該列上最小。

本題要求編寫程序,求一個給定的n階方陣的鞍點。

輸入格式:

輸入第一行給出一個正整數n(1≤n≤6)。隨后n行,每行給出n個整數,其間以空格分隔。

輸出格式:

輸出在一行中按照“行下標 列下標”(下標從0開始)的格式輸出鞍點的位置。如果鞍點不存在,則輸出“NONE”。題目保證給出的矩陣至多存在一個鞍點。

輸入樣例1:

4
1 7 4 1
4 8 3 6
1 6 1 2
0 7 8 9

輸出樣例1:

2 1

輸入樣例2:

 2
1 7
4 1

輸出樣例2:

    NONE

代碼

#include<stdio.h>
int main ()
{int n,i,j,c,b,g; int a[6][6];scanf("%d",&n);for (i=0;i<n;i++) {for (j=0;j<n;j++) {scanf("%d",&a[i][j]);}scanf("\n");}g=0;for (i=0;i<n;i++) {b=0;for (j=b+1;j<n;j++) {if (a[i][b]<a[i][j]){b=j;}c=i;for (i=0;i<n;i++) {if(a[i][b]>=a[c][b]){break;}else {g=1;printf("%d %d",c,b);}}}if(g==0) {printf("NONE");}}return 0;
}

2)設計思路

我還是簡單用文字介紹我的設計思路吧。先在行中找到最大值,再從該最大值所在的列判斷該數是不是在該列中是最小值!其中的“if(i==temp)”是用來判斷是不是鞍點,因為鞍點的行數等于列數!

3)本題調試過程中遇到的問題及其解決方法

問題1,“最大規模,有并列極值元素,最后一個是鞍點”

截圖

1580673-20190322165038146-481185415.png

流程圖

1580673-20190322170816882-1742800952.jpg

本題調試遇到的問題及其解決方法

問題1,代碼的前部分是在從小到大排數字,而題目是從大到小輸出數字

解決方法,在輸入數組時,可以從后往前輸出!

問題2,題目要求輸出的數字行末不得有多余的空格

解決方法,最后一個數字單獨輸出!

挑戰題

7-1 冒泡法排序 (10 分)

輸入1個正整數n(1<=n<=10),然后輸入n個整數并存放在數組中,將這n個整數從大到小排序后輸出,相鄰數字間有一個空格,行末不得有多余空格。
輸入格式:
輸入第一行給出一個不超過10的正整數n。第二行給出n個整數,其間以空格分隔。
輸出格式:
在一行中輸出從大到小有序的數列,相鄰數字間有一個空格,行末不得有多余空格。
輸入樣例:

4 
75 71 77 76

輸出樣例:

77 76 75 71

實驗代碼

#include<stdio.h>
int main (void)
{int i,index,k,n,temp;int a[10];scanf("%d",&n);for(i=0;i<n;i++)scanf("%d",&a[i]);for(k=0;k<n-1;k++){index=k;for(i=k+1;i<n;i++)if(a[i]<a[index])index=i;temp=a[index];a[index]=a[k];a[k]=temp;}for(i=n-1;i>0;i--){printf("%d ",a[i]);}printf("%d",a[0]);return 0;

本題調試遇到的問題及其解決方法

問題1,代碼的前部分是在從小到大排數字,而題目是從大到小輸出數字

解決方法,在輸入數組時,可以從后往前輸出!

問題2,題目要求輸出的數字行末不得有多余的空格

解決方法,最后一個數字單獨輸出!

流程圖

第四周挑戰題.jpg
1580673-20190322174507799-1270735452.jpg

截圖

1580673-20190322174656149-769191569.png

學習總結

周/日期這周所花的時間代碼行學到的知識點簡介目前比較困惑的問題
3/9-3/153d100文件建立及其文件的利用
3/15-3/184d150二位數組和暴力解法最大子數組最優的解法是什么,如何降低時間復雜度
3/18-3/195d250選擇排序法我沒有完全消化選擇排序法的思路

轉載于:https://www.cnblogs.com/Floating-dream/p/10579061.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/248300.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/248300.shtml
英文地址,請注明出處:http://en.pswp.cn/news/248300.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

2019春季學期第四周作業

2019春季學期第四周作業 這個作業屬于那個課程C語言程序設計Ⅰ這次作業要求在哪里2019春季學期第四周作業我在這個課程的目標是我希望能夠更加掌握循環和排序參考文獻無選擇法排序 本題要求將給定的n個整數從大到小排序后輸出。輸入格式&#xff1a; 輸入第一行給出一個不超過1…

javaScript第二天(2)

02JavaScript基礎隨堂筆記 01.運算符[☆] 知識點-算數運算符 作用就是進行 加, 減, 乘, 除 , 取余運算的 算數運算符的重點是通過算數運算和可以實現類型轉換 加號可以實現數據類型轉換: 一個數字和一個空字串相加最后的結果就是字符串減號也可以實現數據類型轉換乘法符號也可…

MFC中的基本知識

轉載于:https://www.cnblogs.com/o8le/archive/2012/05/21/2512178.html

Python中字符串操作函數string.split('str1')和string.join(ls)

Python中的字符串操作函數split 和 join能夠實現字符串和列表之間的簡單轉換&#xff0c; 使用 .split()可以將字符串中特定部分以多個字符的形式&#xff0c;存儲成列表 1 def split(self, *args, **kwargs): # real signature unknown2 """3 …

javaScript第三天(1)

03-JavaScript基礎 1.核心知識點 分支語句 【重點】斷點調試 [查看程序邏輯的一個技能]循環語句[重點 ☆☆☆] 2.今日學習目標 能夠掌握條件判斷分支語句能夠掌握switch分支語句能夠掌握三元表達式分支語句能夠掌握循環語句 條件判斷&#xff08;分支&#xff09; 語法 //…

關于單鏈表的頭插法和尾插法

#include<stdio.h>#include<stdlib.h> typedef struct Node { // 定義的鏈表類型 int data; struct Node *next; }LNode , *Linklist; void print(Linklist L){ //這是一個將鏈表數據輸出的函數 Linklist temL; whi…

javascript第三天(2)

03JavaScript基礎課堂筆記 01-分支語句 知識點-多條件判斷分支語句 語法 if(條件) {代碼1 }else if(條件) {代碼2 }else if(條件) {代碼3 }else {代碼4 }執行過程 1. 代碼自上而下執行 2. 程序先判斷第一個條件是否成立 true 還是 false 3. 如何第一個條件的結果是 true,那么就…

男生英文名大全

起個好聽的英文名很重要吆&#xff01;既要好記&#xff0c;好聽又要富有寓意。。。 AARON (希伯來)啟發的意思&#xff0c;AARON被描繪為不高但英俊的男人&#xff0c;誠實刻苦具有責任感&#xff0c;是個有效率個性沉靜的領導者。 ABEL (希伯來)"呼吸"的意思&am…

Codeforces Round #548 (Div. 2) A. Even Substrings

You are given a string ??1?2…??ss1s2…sn of length ?n, which only contains digits 11, 22, ..., 99. A substring ?[?…?]s[l…r] of ?s is a string ????1??2…??slsl1sl2…sr. A substring ?[?…?]s[l…r] of ?s is called even if the number r…

VI編輯器常用命令

vi —終端中的編輯器 vi 簡介 打開和新建文件 三種工作模式 常用命令 分屏命令 01. vi 簡介 1.1 學習 vi 的目的 在工作中&#xff0c;要對 服務器 上的文件進行 簡單 的修改&#xff0c;可以使用 ssh 遠程登錄到服務器上&#xff0c;并且使用 vi 進行快速的編輯即可 常見…

kubectl 常用命令

1. 查看鏡像定義的內容 docker image inspeck 鏡像名:版本 2. 查看可回滾歷史 # myapp-deploy 指定哪個 deployment kubectl rollout history deployment myapp-deploy 3. 回滾到上一個版本 # rollout undo 回滾到上一版本的 deployment kubectl rollout undo deployment mya…

javaScript基礎講義第四天(1)

05-javaScript基礎 核心知識點 數組操作字符串方式獲取系統時間Math相關方法 今日目標 能夠完成數組相關案例能后獲取系統時間能夠操作隨機數能夠完成小娜案例**[最終的目標]** 數組 思考如果我們希望同時保存多條數據該怎么辦&#xff1f;【例如&#xff1a;如何將班上所…

20175213 2018-2019-2 《Java程序設計》第4周學習總結

## 教材學習內容總結 在第四周的學習過程中&#xff0c;我學習了第五章的內容。 第五章內容總結&#xff1a; 1.子類繼承的方法只能操作子類繼承和隱藏的成員變量。 2.子類和父類在同一包的繼承性 子類自然繼承了其父類中不是private的成員作為自己的成員。 3.子類和父類不在同…

Machine Schedule為什么UVA過了POJ過不了

UVA1194 POJ1325 POJ要多判一個非零&#xff01;&#xff01;&#xff01; #include<cstdio> #include<vector> #include<cstring> using namespace std; vector<int>e[105]; int vis[105]; int link[105]; int t; int find(int x) {for(int i0;i<e…

課堂筆記

javaScript基礎 01.數組 復習數組 數組的意義 程序中可能會遇到一次保存多條數據情況,使用數組解決問題.數組也是一個保存數據的一個容器定義 通過字面量方式定義數組(推薦) var ary [];通過構造函數定義數組(了解) var ary new Array();賦值 通過索引的方式給數組賦值 va…

寫一個使兩個整數進行交換的方法(不能使用臨時變量) 【前端每日一題-27】...

寫一個使兩個整數進行交換的方法&#xff08;不能使用臨時變量&#xff09;這道題是一個比較有意思的題&#xff0c;記錄于此。var a10; var b20;...不用臨時變量讓a和b交換console.log(a); console.log(b);復制代碼es6 對象擴展[a,b][b,a];復制代碼利用執行順序aab; ba-b; aa-…

CS 320—Week 8 Homewor

CS 320—Week 8 Homework—Due W 3/27 11:59pmWrite your answers to the problems in the space indicated. Scan your solution and submitto Gradescope as a PDF file. You will receive an email about the Gradescope account.You may do this from your phone using fre…

javascript隨堂練習(分支,循環語句)

var flag true;//while語句執行&#xff1a;while(flag){//獲取用戶輸入選擇信息號碼&#xff1a;&#xff08;字符串中的 \n 為換行的效果&#xff09; var num prompt(你好,我是小娜\n請輸入編號或者關鍵詞選擇功能,輸入Q(q)退出聊天\n1.計算\n2.時間\n3.笑話) // 利用swit…

vue組件間函數調用

vue父子組件間函數調用 <Child ref"myChild"></Child> // 父組件 // 引入子組件 import Child from ./Child export default {// 注冊子組件components: {Child},created () {// 調用子組件中的childMethod&#xff0c;并且傳遞參數data&#xff0c;需要…

Cocoapods pod update執行失敗報錯CocoaPods was not able to update the `master` repo.2019的解決...

很久沒動pod&#xff0c;最近更新發現&#xff1a; CocoaPods報CocoaPods was not able to update the master repo. If this is an unexpected issue and persists you can inspect it running pod repo update --verbose錯誤。 使用命令pod repo update --verbose依然 不行&a…