-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathloop.c
142 lines (131 loc) · 2.65 KB
/
loop.c
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
// loops array and function pointers
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
void print_array(int *array, int size) {
for (int i = 0; i < size; i++) {
printf("%d ", array[i]*2);
}
printf("Double array \n");
}
void address(int *array, int size) {
for (int i = 0; i < size; i++) {
printf("%p ", &array[i]);
}
printf("Address of array \n");
}
void test_case() {
// ++k increment and return new Value and k++ is increment and return old value
for(int k = 0 ; k< 10; ++k) {
printf("k is %d \n", k);
}
}
// whiel Loop
void while_loop() {
int i = 0;
while (i < 10) {
printf("i is %d \n", i);
i++;
}
}
// do while loop
void do_while_loop() {
int i = 0;
do {
printf("i is %d \n", i);
i++;
} while (i < 10);
}
// even Odds
void even_odd(int n ) {
for(int k = 0 ; k <n; k++) {
if(k&1) {
printf("Odd %d \n", k);
} else {
printf("Even %d \n", k);
}
}
}
// prime Array
void primr( int n) {
// optimized solution
for(int j = 2; j < n; j++) {
int i = 2;
for(; i < j; i++) {
if(j%i == 0) {
break;
}
}
if(i == j) {
printf("Prime %d \n", j);
}
}
}
// Array in C
void arr() {
int a[5] = {1, 2, 3, 4, 5};
// if size is not known
int *b = (int *)malloc(5 * sizeof(int)); // malloc is used to allocate memory in heap and it returns a void pointer
b[0] = 1;
b[1] = 2;
b[2] = 3;
b[3] = 4;
b[4] = 5;
}
// sum up to n
void n_sum(int n) {
int sum = 0;
for(int i = 0; i <= n; i++) {
sum += i;
}
printf("Sum is %d \n", sum);
}
//
int n_sum2(int n) {
if( n == 0) {
return 0;
} else {
return n + n_sum2(n-1);
}
}
// plai
void is_palindrome(char *str) {
int i = 0;
int j = strlen(str) - 1;
while(i < j) {
if(str[i] != str[j]) {
printf("Not Palindrome \n");
return;
}
i++;
j--;
}
printf("Palindrome \n");
}
// randome string
void random_string() {
char *str = (char *)malloc(10 * sizeof(char));
for(int i = 0; i < 10; i++) {
str[i] = rand() % 26 + 'a';
}
str[10] = '\0';
printf("%s \n", str);
free(str);
}
int main()
{
int array[5] = {1, 2, 3, 4, 5};
print_array(array, 5);
address(array, 5);
test_case();
// while_loop();
// do_while_loop();
// even_odd(10);
// primr(100);
// arr();
n_sum(10);
printf("Sum is %d \n", n_sum2(10));
is_palindrome("madam");
random_string();
return 0;
}