Added files from first programming course at OSU

This commit is contained in:
2019-07-09 18:14:25 -07:00
parent 4a591de966
commit 8c92e250d9
48 changed files with 2858 additions and 0 deletions

View File

@@ -0,0 +1,3 @@
Corwin Perren
ECE 151 Section 10
931759527

View File

@@ -0,0 +1,193 @@
1 - What does a comment in C look like? Give some examples.
/** This is what the majority of block comments in C look like. Once it is
* recognized as a comment, the block color will change for easier
* readability.
*/
// This is an example of a single line comment. It's useful for commenting on
// the same line as actual code.
2 - How does one open a file in vi? Save a file? Quit?
a. To open a file, you type "vi filename" at the linux command line.
To save a file, enter vi command mode and type ":w"
To quit, enter vi command mode and type ":q" or press shift-z-z
3 - (3.1) Write the octal, decimal, and hexadecimal equivalents of these numbers.
Answers in form "Original: octal, decimal, hexadecimal"
a. 00110011 = 63, 51, 33
b. 01101100 = 154, 108, 3C
c. 01110111 = 167, 119, 77
d. 00111101 = 75, 61, 3D
e. 11111011 = -5, -5, -5
f. 11111111 = -1, -1, -1
g. 00100010001011010 = 42132, 17498, 445A
h. 10100010001011010 = -135646, -48038, -BBA6
4 - (3.5) Find the errors in each of the following segments.
a. printf("%s\n", 'Happy Birthday');
Fixed: printf("%s\n", "Happy Birthday");
b. printf("\%c\n", 'Hello');
Fixed: printf("%s\n", "Hello");
c. printf("%c\n", "This is a string);
Fixed: printf("%s\n", "This is a string");
d. printf(""%s"", 'Good Bye');
Fixed: printf("%s", "\"Good Bye\"\n");
e. char c = 'a';
printf("%s\n", c);
Fixed: char c = 'a';
printf("%c\n", c);
f. printf('Enter your name: ");
Fixed: printf("Enter your name: ");
g. printf( %f, 123.456);
Fixed: printf("%f", 123.456);
h. printf("%s%s\n", 'O', 'K');
Fixed: printf "%s%s\n, "O", "K");
i. char c;
scanf("%c", c);
Fixed: char c;
scanf("%c", &c);
j. double d;
scanf("%f", &d);
printf("%f", d);
Fixed: double d;
scanf("%lf", &d);
printf("%lf", d);
k. int d;
scanf("%f", &d);
printf("%f", d);
Fixed: int d;
scanf("%d", &d);
printf("%d", d);
l. double x = 123.45678, y;
int d;
d = x;
y = d;
printf("%f\n", y);
Fixed: double x = 123.45678
double d;
d = x;
y = d;
printf("%f\n", y);
5 - (3.6) How many digits are after the decimal point for floating point values
printed with printf? Does printf round or truncate values?
a. There are six values after the decimal point by default. Yes,
printf will always truncate to this number unless otherwise specified, and
while doing so, it rounds the answer.
6 - (3.17) Signed and unisgned representation problems
a. Signed - 256
Unsigned - 128
b. Signed - 65536
Unsigned - 32768
c. Signed - 4294967296
Unsigned - 2147483648
d. Signed - 64
Unsigned - 32
e. Signed - 1024
Unsigned - 512
7 - (4.1) State whether the following are true or false?
a. False. Operators in C are evaluated from right to left. The
compiler reads down the code, the evaluates coming back up in the opposite
direction.
b. False. The || operator is an inclusive or, meaning that if either
or both of the operator statements are true, the expression will evaluate as
true.
8 - (4.12) - Write C Expressions
a. (x + 4) / (y + 5)
b. 9 + (5*((x + 4) / (y + 5)))
c. (4 / 3) * 3.14 * r pow(r, 3)
d. x < y
e. (x >= y) & (y <= z)
f. (x >= y) & (x >= 0)
g. (x <= 1) | (x > 20)
h. (x > 1) & (x <= 20)
i. ( (x > 1) & (x <= 20) ) | ( (y <= 3) & (y >= 1) )
9 - (5.3) Correct errors in each of the code blocks
a. if(age >= 65);
printf("Age is greater than or equal to 65\n");
else
printf("Age is less than 65\n")
a fixed: if(age >= 65){
printf("Age is greater than or equal to 65\n");
}else{
printf("Age is less than 65\n");
}
b. if(i = 2)
printf("i is 2\n");
else
printf("i is not equal to 2\n");
b fixed: if(i == 2){
printf("i is 2\n");
}else{
printf("i is not equal to 2\n");
}
c. for(x = 999; x >= 1; x +=2)
printf("%d\n", n);
c fixed: for(int x = 999; x >= 1; x -=2){
printf("%d\n", x);
}
d. counter = 2;
Do {
if(counter % 2 == 0)
printf("%d\n", counter);
counter += 2;
}While(counter < 100)
d fixed: counter = 2;
while(counter < 100){
if((counter % 2) == 0){
printf("%d\n", counter);
counter += 2;
}
}
e. total = 1;
for(x = 100; x <= 150; x++);
total += x;
e fixed: total = 0;
for(int x = 100; x <= 150; x++){
total += x;
}

View File

@@ -0,0 +1,23 @@
/** Pseudocode for question 6, homework 1, in ece151
* Made by Corwin Perren
*/
create integer x
create integer t
create integer sum
create integer a and set to 0
create integer b and set to 1
print "Enter the step of the Fibonacci sequence you want to calculate:"
print a new line
set integer t from user input
while
t is greater than x
print a
sum a and b
set a = b
set b = sum
increment x by 1
when false print new line

View File

@@ -0,0 +1,21 @@
/** Pseudocode for question 7, homework 1, in ece151
* Made by Corwin Perren
*/
create integer x
print "Enter a number between 0 and 255"
print a new line
receive an integer "x" from user
if
1: x is less than 0 and greater than 255
and
2: x is not -1
print "The value you entered was improper or out or range"
print a new line
else if
1: x is greater than or equal to 0
and
2: x is less than or equal to 255
print corresponding ASCII character from value of x