#include<stdio.h>
int a[10][10],s[10],n;     
void read_adjacency_matrix(int a[10][10],int n)    
{
    int i,j;
    for(i=0;i<n;i++)
    {
        for(j=0;j<n;j++)
        {
            scanf("%d",&a[i][j]);
        }
    }
}

void bfs(int a[10][10],int n,int u)
{
    int f,r,q[10],v;
    int s[10]={0}; 
    printf("The nodes visited form %d:",u);
    f=0,r=-1;       
    q[++r]=u;      
    s[u]=1;         
    printf("%d\t",u);  
    while(f<=r)
    {
        u=q[f++];   
        for(v=0;v<n;v++)
        {
            if(a[u][v]==1)
            {
                if(s[v]==0)
                {
                    printf("%d\t",v);
                    s[v]=1;
                    q[++r]=v; 
                }
            }
        }
    }
    printf("\n");
}

void main()
{
    int i,source;
    scanf("%d",&n);
    read_adjacency_matrix(a,n);
    for(source=0;source<n;source++)
    {
        bfs(a,n,source);
    }
}

Embed on website

To embed this project on your website, copy the following code and paste it into your website's HTML: