1
0
mirror of https://github.com/krislamo/knrc.git synced 2024-11-10 00:30:35 +00:00

Compare commits

..

3 Commits

Author SHA1 Message Date
9fd4d3db68
Character array example 2021-11-23 20:48:37 -05:00
7825fcd167
Exercise 1-15. Make temp. conversion function 2021-11-23 00:52:13 -05:00
984c019e14
Function example 2021-11-23 00:31:57 -05:00
4 changed files with 82 additions and 2 deletions

View File

@ -4,6 +4,8 @@
#define UPPER 300
#define STEP 20
float convert(int f);
/* print Fahrenheit-Celsius table */
int main()
{
@ -11,5 +13,10 @@ int main()
printf("Fahrenheit\tCelsius\n=======================\n");
for (fahr = UPPER; fahr >= LOWER; fahr = fahr - STEP)
printf("%3d\t\t%7.1f\n", fahr, (5.0/9.0)*(fahr-32));
printf("%3d\t\t%7.1f\n", fahr, convert(fahr));
}
float convert(int fahr)
{
return (5.0/9.0)*(fahr-32);
}

24
13-functions.c Normal file
View File

@ -0,0 +1,24 @@
#include <stdio.h>
int power(int m, int n);
/* test power function */
int main()
{
int i;
for (i = 0; i < 10; ++i)
printf("%d %d %d\n", i, power(2,i), power(-3,i));
return 0;
}
/* power: raise base to n-th power; n >= 0 */
int power(int base, int n)
{
int i, p;
p = 1;
for (i = 1; i <= n; ++i)
p = p * base;
return p;
}

49
14-char-arrays.c Normal file
View File

@ -0,0 +1,49 @@
#include <stdio.h>
#define MAXLINE 1000 /* maximum input line size */
int getline(char line[], int maxline);
void copy(char to[], char from[]);
/* print longest input line */
main()
{
int len;
int max;
char line[MAXLINE];
char longest[MAXLINE];
max = 0;
while((len = getline(line, MAXLINE)) > 0)
if (len > max) {
max = len;
copy(longest, line);
}
if (max > 0)
printf("%s", longest);
return 0;
}
/* getline: read a line into s, return length */
int getline(char s[], int lim)
{
int c, i;
for (i=0; i<lim-1 && (c=getchar())!=EOF && c!='\n'; ++i)
s[i] = c;
if (c == '\n') {
s[i] = c;
++i;
}
s[i] = '\0';
return i;
}
/* copy: copy 'from' into 'to': assume to is big enough */
void copy(char to[], char from[])
{
int i;
i = 0;
while ((to[i] = from[i]) != '\0')
++i;
}

View File

@ -4,7 +4,7 @@ OBJS = $(patsubst %.c,bin/%,$(wildcard *.c))
all: $(OBJS)
$(OBJS):
$(CC) -o ./$@ $(patsubst bin/%,%.c,$@)
$(CC) -o ./$@ $(patsubst bin/%,%.c,$@) -ansi
clean:
$(RM) ./bin/*