1. 程式人生 > >第十四十五周作業

第十四十五周作業

流程圖 運算 漏洞 scanf span 以及 調試 一起 提示

要求二

題目7-5 矩陣運算

1.實驗代碼

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

2 設計思路

(1)文字描述

第一步:理解題意,按照套路得知需要打出四個for語句。

第二步:定義整數型變量i,j,sum,n以及a[10][10].

第三步:打出主題框架並在第二個for中用scanf語句定義a[i][j]。

第四步:在第四個語句中用if語句判斷排除副對角線,橫豎排的最後一行,寫出sum表達式。

第五步:用printf函數輸出%d,得到sum的結果。

(2)流程圖

3.本題調試過程碰到問題及解決辦法

錯誤提示的截圖

一開始沒清楚怎麽排除那三個條件,用了三個if語句分開排除,後來發現那是錯的。

技術分享圖片

問題及解決辦法:把三個if中分開的條件用&&合在一起,用一個if同時判斷,就不會出現判斷多次以及判斷漏洞。

4.本題PTA提交列表

技術分享圖片

錯誤提示解釋說明:本題出現了多個錯誤,編譯錯誤有sum定義了兩次,大括號少打了一個,答案錯誤是由於上面所說的問題導致的。

要求

技術分享圖片

第十四十五周作業