Một biến hoặc giá trị phức thường được biểu diễn dưới dạng một cặp số thực dấu phẩy động. Các ngôn ngữ hỗ trợ kiểu dữ liệu phức thường cung cấp các cú pháp đặc biệt để xây dựng các giá trị này, đồng thời mở rộng các phép toán số học cơ bản ('+', '−', '×', '÷') để áp dụng với số phức. Các phép toán này thường được biên dịch thành một chuỗi mã lệnh dấu phẩy động hoặc thành các lệnh gọi thư viện. Những ngôn ngữ này cũng có thể hỗ trợ các thao tác khác như định dạng, kiểm tra bằng nhau, v.v. Giống như trong toán học, những ngôn ngữ này thường biểu diễn một giá trị dấu phẩy động tương đương với một giá trị phức có phần ảo bằng không.
Thư viện chuẩn của C++ cũng cung cấp lớp mẫu complex và các hàm toán học phức trong tệp tiêu đề <complex>.
Ngôn ngữ lập trình Go có sẵn các kiểu complex64 (mỗi thành phần là một số float 32 bit) và complex128 (mỗi thành phần là một số float 64 bit).
Mô đun Math::Complex trong Perl cung cấp khả năng hỗ trợ các số phức.
Python cung cấp kiểu complex được xây dựng sẵn. Các hằng số phức có thể được xác định bằng cách gắn thêm ký tự "j". Các hàm toán học số phức được cung cấp trong mô đun thư viện chuẩn cmath.[4]
Ruby cung cấp lớp Complex trong mô đun thư viện chuẩn complex.
OCaml hỗ trợ số phức thông qua mô đun thư viện chuẩn Complex.
Haskell hỗ trợ số phức thông qua mô đun thư viện chuẩn Data.Complex (tên cũ là Complex).
Mercury cung cấp khả năng hỗ trợ số phức và nạp chồng toán tử đầy đủ trong bản phân phối mở rộng, sử dụng thư viện libcomplex_numbers.
Java không có lớp số phức chuẩn, nhưng cũng có một số giải pháp triển khai lớp số phức:
Thư viện Apache Commons Math cung cấp khả năng hỗ trợ số phức cho Java thông qua lớp Complex.
javafastcomplex cũng bổ sung khả năng sử dụng số phức cho Java
jcomplexnumber là một dự án triển khai số phức bằng Java.
JLinAlg hỗ trợ các giá trị phức với độ chính xác tùy ý.
Common Lisp: Chuẩn ANSI Common Lisp hỗ trợ các giá trị phức có các thành phần là số dấu phẩy động, số hữu tỉ hay số nguyên có độ chính xác tùy ý. Các hàm toán học cơ bản đều được định nghĩa cho số phức nếu có thể. Ví dụ, căn bậc hai của -1 là một số phức:
?(sqrt-1)#C(01); kết quả của (sqrt -1)
Scheme: Số phức cùng các hàm (v.d. sin) đều có sẵn trong ngôn ngữ này. Tuy nhiên việc triển khai chúng chỉ là tùy chọn trong chuẩn R5RS, còn với chuẩn R6RS là bắt buộc.
smart BASIC dành cho iOS hỗ trợ sẵn số phức theo ký hiệu a + bi. Bất cứ biến, phép toán hay hàm nào đều có thể chấp nhận cả các đối số thực và phức và trả về giá trị thực hoặc phức tùy vào kết quả tính toán. Ví dụ, căn bậc hai của -4 là một số phức:
PRINTSQRT(-4)2i
Julia có sẵn các kiểu được định trước cho cả số phức và số hữu tỉ kể từ phiên bản 0.3[5]
^A guide to Fortran IV programming Daniel D. McCracken - 1972 - 288 pages. "The capability provided by Fortran complex operations is a great savings in programming effort in certain problems. "