complete c21

This commit is contained in:
Akbar Rahman 2023-10-26 20:24:04 +01:00
parent 3640e0ed6a
commit dd75cd75e7
Signed by: alvierahman90
GPG Key ID: 20609519444A1269
2 changed files with 64 additions and 0 deletions

20
Exercises/C21/ex1.c Normal file
View File

@ -0,0 +1,20 @@
#include <stdlib.h>
#include <stdio.h>
int main(int argc, char *argv[]) {
int age;
char name[10];
if ( argc != 3 )
{
printf ("USAGE: %s name age\n",argv[0]);
exit (0);
}
sscanf(argv[1],"%s",name);
sscanf(argv[2],"%d",&age);
printf ("age=%d name=%s\n", age, name);
return 0;
}

44
Exercises/C21/ex2.c Normal file
View File

@ -0,0 +1,44 @@
// Modified from C10 Ex5
#include <stdlib.h>
#include <stdio.h>
int date_to_day(int year, int month, int day) {
if (month < 3) {
month += 12;
year -= 1;
}
return ((13*month+3)/5 + day + year + year/4 - year/100 + year/400) % 7;
}
void print_day_of_week(int day) {
switch (day) {
case 0: printf("Monday\n"); break;
case 1: printf("Tuesday\n"); break;
case 2: printf("Wednesday\n"); break;
case 3: printf("Thursday\n"); break;
case 4: printf("Friday\n"); break;
case 5: printf("Saturday\n"); break;
case 6: printf("Sunday\n"); break;
}
}
int main(int argc, char *argv[]) {
int rc, year, month, day, nd;
if ( argc != 4 )
{
printf ("USAGE: %s year month day\n",argv[0]);
exit (0);
}
sscanf(argv[1],"%d",&year);
sscanf(argv[2],"%d",&month);
sscanf(argv[3],"%d",&day);
nd = date_to_day(year, month, day);
print_day_of_week(nd);
return 0;
}