Code:
#include<stdio.h>
#include<string.h>
#define d 9
#define e 9
#define f 4
int main()
{
char *num[]={"","one","two","three","four","five","six","seven","eight","nine"};
char *num10[]={"","ten","twenty","thirty","forty","fifty","sixty","seventy","eighty","ninety"};
char *num11[]={"","eleven","twelve","thirteen","fourteen","fifteen","sixteen","seventeen","eighteen","nineteen"};
char *num100[]={"","hundred","thousand","million","billion"};
longlongint n,n1;
longlongint te=10,hu=100,th=1000,huth=100000,mi=1000000,humi=100000000,bi=1000000000,tr=1000000000000;
printf("type a number smaller than a trillion to see it in letters:");
scanf("%lli",&n);
if (n>=bi&&n<tr) {
n1=n/humi;
if (n1>=hu&&n1<th){
if (n1%100==0)
printf("%s%s",num[n1/100],num100[1]);
if (n1%100!=0)
printf("%s%s",num[n1/100],num100[1]);
n1=n1%100;
}
if (n1>=te&&n1<hu){
if (n1%10==0)
printf("%s",num10[(n1/10)]);
if(n1%10!=0&&n1>=20)
printf("%s%s",num10[(n1/10)],num[n1%10]);
if (n1>10&&n1<20) {
printf("%s",num11[n1%10]);
}
}
if (n1>=0&&n1<te){
printf("%s\n",num[n1]);
}
printf("%s ",num100[4]);
n=n%humi;
}
if (n>=mi&&n<bi) {
n1=n/huth;
if (n1>=hu&&n1<th){
if (n1%100==0)
printf("%s%s",num[n1/100],num100[1]);
if (n1%100!=0)
printf("%s%s",num[n1/100],num100[1]);
n1=n1%100;
}
if (n1>=te&&n1<hu){
if (n1%10==0)
printf("%s",num10[(n1/10)]);
if(n1%10!=0&&n1>=20)
printf("%s%s",num10[(n1/10)],num[n1%10]);
if (n1>10&&n1<20) {
printf("%s",num11[n1%10]);
}
}
if (n1>=0&&n1<10){
printf("%s\n",num[n1]);
}
printf("%s ",num100[3]);
n=n%huth;
}
if (n>=th&&n<huth) {
n1=n/1000;
if (n1>=100&&n1<1000){
if (n1%100==0)
printf("%s%s",num[n1/100],num100[1]);
if (n1%100!=0)
printf("%s%s",num[n1/100],num100[1]);
n1=n1%100;
}
if (n1>=10&&n1<100){
if (n1%10==0)
printf("%s",num10[(n1/10)]);
if(n1%10!=0&&n1>=20)
printf("%s%s",num10[(n1/10)],num[n1%10]);
if (n1>10&&n1<20) {
printf("%s",num11[n1%10]);
}
}
if (n1>=0&&n1<10){
printf("%s\n",num[n1]);
}
printf("%s ",num100[2]);
n=n%1000;
}
if (n>=hu&&n<th){
if (n%100==0)
printf("%s%s",num[n/100],num100[1]);
if (n%100!=0)
printf("%s%s",num[n/100],num100[1]);
n=n%100;
}
if (n>=te&&n<hu){
if (n%10==0)
printf("%s",num10[(n/10)]);
if(n%10!=0&&n>=20)
printf("%s%s",num10[(n/10)],num[n%10]);
if (n>10&&n<20) {
printf("%s",num11[n%10]);
}
}
if (n>=0&&n<te){
printf("%s\n",num[n]);
}
if (n==0) {
printf("zero");
}
return0;
}
Here is what I did after reading anduril467's suggesstion. This might look too long but only copy several copy paste thanks everybody.