input: Write a function to encrypt a message using the Caesar cipher. The function should take two arguments: the message to be encrypted (string) and the shift value (integer). It should return the encrypted message as a string. Note that the Caesar cipher shifts each letter in the message by the specified number of positions in the ASCII table. If the shifted character exceeds the printable ASCII range (32-126), it should wrap around.
  
  def caesar_encrypt(message, shift):
      encrypted_message = ""
      for c in message:
          encrypted_c = ord(c) + shift
          if encrypted_c > 126:
              encrypted_c -= 94
          encrypted_message += chr(encrypted_c)
      return encrypted_message
  
  assert caesar_encrypt("Hello, World!", 3) == "Khoor/#Zruog$1"
  assert caesar_encrypt("Encrypt this!", 5) == "jst|swy9ynxv\"3"
  assert caesar_encrypt("Shift backward.", -2) == "Qfgrf/)ayc`qyl,"
  assert caesar_encrypt("", 10) == ""
  assert caesar_encrypt("Special!@#$%", 0) == "Special!@#$%"
output: def caesar_encrypt(message, shift):
      encrypted_message = ""
      for c in message:
          encrypted_c = ord(c) + shift
          if encrypted_c > 126:
              encrypted_c -= 94
          elif encrypted_c < 32:
              encrypted_c += 94
          encrypted_message += chr(encrypted_c)
      return encrypted_message