how do we calculate bond order of a molecule that has 3 different elements, like for example C-N-O

Here is a site that talks about bond orders and how they are sometimes averages and not always whole numbers.

http://en.wikipedia.org/wiki/Bond_order

Here is a site that gives a couple of resonance structures for the cyanate ion. You can figure the average from this.
http://tannerm.com/lewis.htm

To calculate the bond order of a molecule with different elements, such as C-N-O, you need to determine the number of bonds between each pair of atoms and then calculate the average bond order.

Here are the steps to follow:

Step 1: Write the Lewis structure of the molecule.
The Lewis structure shows the arrangement of atoms and their valence electrons in the molecule. For C-N-O, you would need to know the number of valence electrons for each element: Carbon (C) has 4 valence electrons, Nitrogen (N) has 5, and Oxygen (O) has 6.

Step 2: Determine the number of bonds between each pair of atoms.
In the Lewis structure, bonds are represented as lines between atoms. Count how many lines represent the bonds between each pair of atoms.
For C-N, you can have a single bond, so there is one bond between C and N.
For N-O, you can have a double bond, so there are two bonds between N and O.
For C-O, you can also have a double bond, so there are two bonds between C and O.

Step 3: Calculate the bond order for each pair.
The bond order is simply the number of bonds between two atoms. For C-N, there is one bond, so the bond order is 1. For N-O and C-O, there are two bonds each, so their bond orders are both 2.

Step 4: Calculate the average bond order.
To calculate the average bond order, add up the bond orders for each pair of atoms and divide by the number of pairs. In this case, there are three pairs: C-N, N-O, and C-O.
Average bond order = (1 + 2 + 2) / 3 = 5 / 3 ≈ 1.67

Therefore, the bond order of C-N-O is approximately 1.67.