From 30047205e440e9ad8984e1830b8b819b5fe1f9f7 Mon Sep 17 00:00:00 2001 From: Akshay Date: Fri, 16 Apr 2021 10:02:33 +0530 Subject: add prog 5 --- 5/input | 5 +++++ 5/main.l | 24 ++++++++++++++++++++++++ 2 files changed, 29 insertions(+) create mode 100644 5/input create mode 100644 5/main.l (limited to '5') diff --git a/5/input b/5/input new file mode 100644 index 0000000..8be510e --- /dev/null +++ b/5/input @@ -0,0 +1,5 @@ +int main() { + int one, two, three; + three = two + one; + printf(three); +} diff --git a/5/main.l b/5/main.l new file mode 100644 index 0000000..ee13053 --- /dev/null +++ b/5/main.l @@ -0,0 +1,24 @@ +%{ + int k = 0; + int o = 0; + int i = 0; +%} + +%% +int|main|printf|scanf|char|if|else|for|switch|case k++; +[+*/%&=] o++; +[a-zA-Z_][a-zA-Z0-9_]* i++; +. ; +\n ; +%% + +int main(void) { + yylex(); + printf("%d keywords\n", k); + printf("%d operators\n", o); + printf("%d identifiers\n", i); +} + +int yywrap() { + return 1; +} -- cgit v1.2.3