C Programming Lab Answers
(All programs as requested)
[Experiment IV - While Loop]
1. Print Odd Numbers
#include <stdio.h>
int main() {
int n, i = 1;
scanf("%d", &n);
while(i <= n) {
if(i % 2 != 0)
printf("%d ", i);
i++;
}
return 0;
}
2. Print Even Numbers
#include <stdio.h>
int main() {
int n, i = 1;
scanf("%d", &n);
while(i <= n) {
if(i % 2 == 0)
printf("%d ", i);
i++;
}
}
3. Sum of N Natural Numbers
#include <stdio.h>
int main() {
int n, i = 1, sum = 0;
scanf("%d", &n);
while(i <= n) {
sum += i;
i++;
}
printf("%d", sum);
}
4. Uppercase Alphabets
#include <stdio.h>
int main() {
char ch = 'A';
while(ch <= 'Z') {
printf("%c ", ch);
ch++;
}
}
5. Lowercase Alphabets
#include <stdio.h>
int main() {
char ch = 'a';
while(ch <= 'z') {
printf("%c ", ch);
ch++;
}
}
[For Loop]
1. Pyramid
#include <stdio.h>
int main() {
for(int i=1;i<=5;i++) {
for(int j=1;j<=i;j++)
printf("*");
printf("\n");
}
}
4. Diamond
#include <stdio.h>
int main() {
int n = 5;
for(int i=1;i<=n;i++) {
for(int j=i;j<n;j++) printf(" ");
for(int j=1;j<=i;j++) printf("* ");
printf("\n");
}
for(int i=n-1;i>=1;i--) {
for(int j=i;j<n;j++) printf(" ");
for(int j=1;j<=i;j++) printf("* ");
printf("\n");
}
}
8. Pattern
#include <stdio.h>
int main() {
for(int i=5;i>=1;i--) {
for(int j=1;j<=i;j++) {
printf("%d%c", j, 'A'+j-1);
}
printf("\n");
}
}
[1D Array]
1. Sum & Product
#include <stdio.h>
int main() {
int n, sum=0, prod=1;
scanf("%d",&n);
int a[n];
for(int i=0;i<n;i++) {
scanf("%d",&a[i]);
sum += a[i];
prod *= a[i];
}
printf("Sum=%d Product=%d", sum, prod);
}
2. Min & Max
#include <stdio.h>
int main() {
int n;
scanf("%d",&n);
int a[n];
for(int i=0;i<n;i++) scanf("%d",&a[i]);
int min=a[0], max=a[0];
for(int i=1;i<n;i++) {
if(a[i]<min) min=a[i];
if(a[i]>max) max=a[i];
}
printf("Min=%d Max=%d", min, max);
}
9. Segregate 0s and 1s
#include <stdio.h>
int main() {
int n, count0=0;
scanf("%d",&n);
int a[n];
for(int i=0;i<n;i++) {
scanf("%d",&a[i]);
if(a[i]==0) count0++;
}
for(int i=0;i<count0;i++) printf("0 ");
for(int i=count0;i<n;i++) printf("1 ");
}
[2D Array]
2. Transpose
#include <stdio.h>
int main() {
int r,c;
scanf("%d%d",&r,&c);
int a[r][c];
for(int i=0;i<r;i++)
for(int j=0;j<c;j++)
scanf("%d",&a[i][j]);
for(int i=0;i<c;i++) {
for(int j=0;j<r;j++)
printf("%d ", a[j][i]);
printf("\n");
}
}
12. Normal of Matrix
#include <stdio.h>
int main() {
int n;
scanf("%d",&n);
int a[n][n];
int sum=0;
for(int i=0;i<n;i++)
for(int j=0;j<n;j++) {
scanf("%d",&a[i][j]);
sum += a[i][j]*a[i][j];
}
printf("%d", sum);
}
15. Matrix Multiplication
#include <stdio.h>
int main() {
int r1,c1,r2,c2;
scanf("%d%d",&r1,&c1);
scanf("%d%d",&r2,&c2);
int a[r1][c1], b[r2][c2], res[r1][c2];
for(int i=0;i<r1;i++)
for(int j=0;j<c1;j++)
scanf("%d",&a[i][j]);
for(int i=0;i<r2;i++)
for(int j=0;j<c2;j++)
scanf("%d",&b[i][j]);
for(int i=0;i<r1;i++) {
for(int j=0;j<c2;j++) {
res[i][j]=0;
for(int k=0;k<c1;k++)
res[i][j]+=a[i][k]*b[k][j];
}
}
for(int i=0;i<r1;i++) {
for(int j=0;j<c2;j++)
printf("%d ", res[i][j]);
printf("\n");
}
}
[Structures]
1. Basic Structure
#include <stdio.h>
struct student {
int id;
char name[50];
};
int main() {
struct student s = {1, "Aaryan"};
printf("%d %s", [Link], [Link]);
}
2. Employee
#include <stdio.h>
struct emp {
int id;
char name[50];
float salary;
};
int main() {
struct emp e;
scanf("%d %s %f",&[Link],[Link],&[Link]);
printf("%d %s %.2f",[Link],[Link],[Link]);
}
4. Structure Array
#include <stdio.h>
struct student {
int id;
char name[20];
};
int main() {
struct student s[2];
for(int i=0;i<2;i++)
scanf("%d %s",&s[i].id,s[i].name);
for(int i=0;i<2;i++)
printf("%d %s\n",s[i].id,s[i].name);
}
[Pointers]
1. Pointer Basics
#include <stdio.h>
int main() {
int a = 10;
int *p = &a;
printf("Value=%d Address=%p", *p, p);
}
3. Vowels & Consonants
#include <stdio.h>
#include <string.h>
int main() {
char str[100];
int v=0,c=0;
scanf("%s",str);
char *p=str;
while(*p) {
if(strchr("aeiouAEIOU", *p))
v++;
else
c++;
p++;
}
printf("Vowels=%d Consonants=%d", v, c);
}
5. Structure Pointer
#include <stdio.h>
struct student {
int id;
char name[20];
};
int main() {
struct student s;
struct student *p = &s;
scanf("%d %s",&p->id,p->name);
printf("%d %s",p->id,p->name);
}