user45654: void buttonPressed()
{
  if(ledOn)
  {
    ledOn = false;
    digitalWrite(13,LOW);
  }else
  {
    ledOn = true;
    digitalWrite(13,HIGH);
  }

  vout=analogRead(sensor);
  vout=(vout*500)/1023;
  tempc=vout; // Storing value in Degree Celsius
  tempf=(vout*1.8)+32; // Converting to Fahrenheit 
  lcd.setCursor(0,0);
  lcd.print("ROOM TEMPERATURE");

  lcd.setCursor(0,1);
  lcd.print("C = ");
  lcd.print(tempc);

  lcd.print("  F = ");
  lcd.print(tempf);
  Serial.print("f ");
  Serial.print(tempf);
}

here is the code of interrupt and i want to monitor the sensor value for about 5second.

user15180: Strictly speaking, yes you CAN generate 5 second delay in interrupt. But you really, really should NOT do it.
And if you are going to do it anyway, it could not be easily done with delay(), as Arduino supports only one level of interrupts and delay depends on interrupts enabled. (which can also be cheated away, but it should not be).
The right thing is use interrupt for fast detection of key pressed and manage other parts in loop(), see https://www.arduino.cc/en/Tutorial/BlinkWithoutDelay how to wait in main, while doing other work.
Also using lcd and Serial inside interrupt can bring a lot of problems, especially if you are using it also in loop() (as the key can be pressed anytime and interrupt can well -interrupt- such commands in the loop and then make your output all wrong and possibly crash your program on the way too.)

Read http://gammon.com.au/interrupts if you want to know more about interrupts and why your idea is not the best possible way.
Question: Can I hit really hard my thumb with heavy hammer?
Answer: Yes, you can, but you really should not do it. There are much better ways for using thumbs and hammers.

user31105: It's bad practice to use a delay within a timer, and 5 seconds is a huge amount of time. Also print statements and possibly lcd print statements I would not advice.
What is better, is to calculate the value, store it in a global variable (vout?). Than set a boolean that a new value has been calculated. 
Your main program checks the boolean and does all the print/lcd code.
If you think you might miss values, than create a global array where you add values in your interrupt, and let the main program process the array.

user10794: You don't need interrupts for any of that. Your main loop just needs to test the switch, eg.
void loop ()
  {
  if (digitalRead (button) == HIGH)  // assuming LOW means pressed
     return;

  // read thermocouple here

  // display results

  delay (5000);

  }



I want to print the value of the thermistor on lcd using interrupts and i want the value to stay about 5 secs

You are misusing interrupts in what you are attempting. See my page about interrupts. You simply should not be attempting to print or delay inside an interrupt routine. The most you should do is detect that the switch is pressed:
volatile bool switchIsPressed = false;

// Interrupt Service Routine (ISR)
void buttonPressed()
  {
  switchIsPressed = true;
  }  // end of buttonPressed ISR

Now in your main loop you detect that the switch is pressed and take your reading. If you want to do something else "remember" the time you showed the value, like this:
unsigned long whenTemperatureDisplayed = 0;

void loop ()
  {
  if (switchIsPressed && whenTemperatureDisplayed == 0)
    {
    // take reading ...
    // display reading ...
    whenTemperatureDisplayed = millis ();  // when we displayed the reading
    switchIsPressed = false;               // ready for next time
    }  // end of if switch was pressed

  if (whenTemperatureDisplayed != 0 &&
      millis () - whenTemperatureDisplayed >= 5000) // 5 seconds are up
    {
    // stop displaying the reading ...
    whenTemperatureDisplayed = 0;
    }  // end of if time is up

  // do other stuff here

  }  // end of loop


45654: <pre><code>void buttonPressed()
{
  if(ledOn)
  {
    ledOn = false;
    digitalWrite(13,LOW);
  }else
  {
    ledOn = true;
    digitalWrite(13,HIGH);
  }

  vout=analogRead(sensor);
  vout=(vout*500)/1023;
  tempc=vout; // Storing value in Degree Celsius
  tempf=(vout*1.8)+32; // Converting to Fahrenheit 
  lcd.setCursor(0,0);
  lcd.print("ROOM TEMPERATURE");

  lcd.setCursor(0,1);
  lcd.print("C = ");
  lcd.print(tempc);

  lcd.print("  F = ");
  lcd.print(tempf);
  Serial.print("f ");
  Serial.print(tempf);
}
</code></pre>

<p>here is the code of interrupt and i want to monitor the sensor value for about 5second.</p>
 15180: <p>Strictly speaking, yes you CAN generate 5 second delay in interrupt. But you really, really should NOT do it.</p>

<p>And if you are going to do it anyway, it could not be easily done with delay(), as Arduino supports only one level of interrupts and delay depends on interrupts enabled. (which can also be cheated away, but it should not be).</p>

<p>The right thing is use interrupt for fast detection of key pressed and manage other parts in loop(), see <a href="https://www.arduino.cc/en/Tutorial/BlinkWithoutDelay" rel="nofollow noreferrer">https://www.arduino.cc/en/Tutorial/BlinkWithoutDelay</a> how to wait in main, while doing other work.</p>

<p>Also using lcd and Serial inside interrupt can bring a lot of problems, especially if you are using it also in loop() (as the key can be pressed anytime and interrupt can well -interrupt- such commands in the loop and then make your output all wrong and possibly crash your program on the way too.)</p>

<hr>

<p>Read <a href="http://gammon.com.au/interrupts" rel="nofollow noreferrer">http://gammon.com.au/interrupts</a> if you want to know more about interrupts and why your idea is not the best possible way.</p>

<p>Question: Can I hit really hard my thumb with heavy hammer?
Answer: Yes, you can, but you really should not do it. There are much better ways for using thumbs and hammers.</p>
 31105: <p>It's bad practice to use a delay within a timer, and 5 seconds is a huge amount of time. Also print statements and possibly lcd print statements I would not advice.</p>

<p>What is better, is to calculate the value, store it in a global variable (vout?). Than set a boolean that a new value has been calculated. </p>

<p>Your main program checks the boolean and does all the print/lcd code.</p>

<p>If you think you might miss values, than create a global array where you add values in your interrupt, and let the main program process the array.</p>
 10794: <p>You don't need interrupts for any of that. Your main loop just needs to test the switch, eg.</p>

<pre><code>void loop ()
  {
  if (digitalRead (button) == HIGH)  // assuming LOW means pressed
     return;

  // read thermocouple here

  // display results

  delay (5000);

  }
</code></pre>

<hr>

<blockquote>
  <p>I want to print the value of the thermistor on lcd using interrupts and i want the value to stay about 5 secs</p>
</blockquote>

<p>You are misusing interrupts in what you are attempting. See <a href="http://www.gammon.com.au/interrupts" rel="nofollow noreferrer">my page about interrupts</a>. You simply should <strong>not</strong> be attempting to print or delay inside an interrupt routine. The most you should do is detect that the switch is pressed:</p>

<pre><code>volatile bool switchIsPressed = false;

// Interrupt Service Routine (ISR)
void buttonPressed()
  {
  switchIsPressed = true;
  }  // end of buttonPressed ISR
</code></pre>

<p>Now in your main loop you detect that the switch is pressed and take your reading. If you want to do something else "remember" the time you showed the value, like this:</p>

<pre><code>unsigned long whenTemperatureDisplayed = 0;

void loop ()
  {
  if (switchIsPressed &amp;&amp; whenTemperatureDisplayed == 0)
    {
    // take reading ...
    // display reading ...
    whenTemperatureDisplayed = millis ();  // when we displayed the reading
    switchIsPressed = false;               // ready for next time
    }  // end of if switch was pressed

  if (whenTemperatureDisplayed != 0 &amp;&amp;
      millis () - whenTemperatureDisplayed &gt;= 5000) // 5 seconds are up
    {
    // stop displaying the reading ...
    whenTemperatureDisplayed = 0;
    }  // end of if time is up

  // do other stuff here

  }  // end of loop
</code></pre>
