Di pustaka standar C, nama header diakhiri dengan .h
akhiran:
stdio.h
Dalam C ++, nama-nama header itu tersedia dalam bentuk alternatif, dengan c
awalan sebagai gantinya:
cstdio
Tulis fungsi yang mengubah bentuk pertama menjadi bentuk kedua. Anda dapat melakukan konversi di tempat, atau membiarkan string asli tetap utuh dan mengembalikan string baru. Apapun terasa alami dalam bahasa pilihan Anda.
Kode harus dikompilasi / ditafsirkan tanpa kesalahan. Peringatan kompiler dapat diterima.
Inilah solusi baseline C Anda. Ini memiliki 70 karakter dan menghasilkan peringatan tentang strlen
:
void f(char*h){int i=strlen(h);h[--i]=0;while(--i)h[i]=h[i-1];*h='c';}
Solusi terpendek (diukur dalam jumlah karakter) menang.
Pembaruan: Jika bahasa pilihan Anda tidak mendukung fungsi, seluruh program juga dapat diterima.
Pembaruan: Seperti yang disarankan oleh FUZxxl, berikut adalah daftar lengkap file header di pustaka standar C:
assert.h
ctype.h
errno.h
float.h
limits.h
locale.h
math.h
setjmp.h
signal.h
stdarg.h
stddef.h
stdio.h
stdlib.h
string.h
time.h
Secara khusus, tidak ada nama header dengan banyak titik di dalamnya.