7-1 判斷上三角矩陣


7-1 判斷上三角矩陣 (15 分)
上三角矩陣指主對角線以下的元素都為0的矩陣;主對角線為從矩陣的左上角至右下角的連線。

本題要求編寫程序,判斷一個給定的方陣是否上三角矩陣。

輸入格式:

輸入第一行給出一個正整數T,為待測矩陣的個數。接下來給出T個矩陣的信息:每個矩陣信息的第一行給出一個不超過10的正整數n。隨后n行,每行給出n個整數,其間以空格分隔。

輸出格式:

每個矩陣的判斷結果占一行。如果輸入的矩陣是上三角矩陣,輸出“YES”,否則輸出“NO”。

輸入樣例:

2
3
1 2 3
0 4 5
0 0 6
2
1 0
-8 2

輸出樣例:

YES
NO

代碼

#include <stdio.h>
int main() { 
	int T,n,i,j,k;
	int a[10][10]; 
	scanf("%d",&T);
	int count=0;
	int record[100]={0};

	for(k=0; k<T; k++){
		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 && a[i][j] != 0){
					count++;
				}
			}		
		}
   	 if(count==0 )
			record[k] = 1;
	else
        	record[k] = 0;
	count=0;		
	}
	for(k=0; k<T; k++){
		if(record[k]==1)
			printf("YES\n");
    	else
			printf("NO\n");
	}

	 return 0;  
}


思路

(注意:每次要將count的值回歸到0,否則將影響后續判斷,與什么時候鍵入int語句無關!)
本題調試過程碰到問題及解決辦法位置混亂
1.出現的段錯誤是for循環的括號所引起的,檢查就可看出,
2.出現的答案錯誤在dev-c++中運行出來無法識別第二個矩陣,自己調試,應該使用返回值來進行判斷

學習進度條


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM