编写程序,输入一个正整数 n (1≤n≤6)和n 阶方阵a中的元素,如果a是上三角矩阵,输出yes 否则输出no中的
flag表示的是什么起什么作用?#include<stdio.h>intmain(void){inta[6][6];intflag=1,i,j,n;printf("Inp...
flag表示的是什么 起什么作用?
#include <stdio.h>
int main(void)
{
int a[6][6];
int flag=1,i,j,n;
printf("Input n(1<=n<=6): ");
scanf("%d",&n);
printf("Input array: \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<i;j++)
if(a[i][j]!=0)
flag=0;
if(flag)
printf("YES\n");
else
printf("NO\n");
return 0;
} 展开
#include <stdio.h>
int main(void)
{
int a[6][6];
int flag=1,i,j,n;
printf("Input n(1<=n<=6): ");
scanf("%d",&n);
printf("Input array: \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<i;j++)
if(a[i][j]!=0)
flag=0;
if(flag)
printf("YES\n");
else
printf("NO\n");
return 0;
} 展开
2个回答
展开全部
flag,也就是标志的意思,在这里,你没有发现,i的变化范围是<n的,而j的变化范围是<i的吗?也就是,在for循环中,当“下”三角当中,任意一个元素不为0时(即,下三角中存在非0的元素,此矩阵不是“上”三角矩阵),那flag就由初始值的1变为了0。如果flag是1,则输出yes,是0,输出no。简而言之,flag是用来判断,下三角中,是否存在非零元素的一个标记。
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询