How can I get an audio clip to play on button push then be stopped before playing again if button is pushed again

I’m trying to get an audio clip to play when I press the “c” key, and if the “c” key is pressed a second time it stops the audio clip on the original key press before starting it again. Below is my code, this starts the audio clip on every tick with no stopping. With nothing to do with the button press. The issue seems to be with the audio.Stop(); line, when I remove it it returns to the button pushing triggering the audio.

Sorry if this is a simple question still in my very early stages of learning unity.

using UnityEngine;
using System.Collections;

public class WarningShouts : MonoBehaviour {

	public AudioClip shout;
	
	private AudioSource source;
	private float volLowRange = .5f;
	private float volHighRange = 1.0f;
	
	
	// Use this for initialization
	void Start () {
		
		source = GetComponent<AudioSource> ();
		
	}
	
	// Update is called once per frame
	void Update () {
		
		if (Input.GetKeyDown("c"))
			audio.Stop ();
			source.PlayOneShot(shout,1);
	}
}

using UnityEngine;
using System.Collections;

public class WarningShouts : MonoBehaviour {
	public AudioClip shout;
	private AudioSource source;
	private float volLowRange = .5f;
	private float volHighRange = 1.0f;

	void Start () {
		source = GetComponent<AudioSource>();
		source.clip = shout;
	}

	void Update () {
		if (Input.GetKeyDown("c")) {
			if (source.isPlaying) source.Stop();
			else source.Play();
		}
	}
}