let’s stay fresh with c. what does this print?
Post on 18-Mar-2016
36 Views
Preview:
DESCRIPTION
TRANSCRIPT
Let’s stay fresh with C. What does this print?
void mystery(int * x); main(){ int a = 5; mystery(&a); printf("%d\n",a);} void mystery(int * x){ int y; y = 2 * *x; *x = 3;}
a) 5 b) 10
c) 6 d) 3
What is the final value of a[4]?
int i;float a[10]={1.0, 5.3, -2.1, 2.0}; for(i=1; i<10; i++){ a[i] = a[i-1]+a[i];}
a) 2 b) 6.2
c) undefined d) 0.0
Which of the following is false about a function being passed an array?
a) it knows the size of the array it was passed
b) it is passed the address of the first element in the arrayc) it is able to modify the values stored in the array
d) all of the above are true
Fill in the blank to print 1 2 3 4 5?
#define SIZE 10void mystery(int a[], int num); main(){ int data[SIZE] = {1,2,3,4,5,6,7,8,9,10}; mystery(____________);} void mystery(int a[], int num){ int i; for(i=0; i<num; i++){ printf("%d ", a[i]); } printf("\n");}
a) data, 5 b) *data,5 c) data, SIZE d) data[SIZE]
Assume the variable x is stored at memory location 1000 and y is stored at memory location 1004. What are the values of x, y, and *y after executing the following block of C code?
int x = 5;int *y; y = &x;x = 7;
a) x = 7, y = 1004, *y = 7
b) x = 7, y = 1000, *y = 5
c) x = 7, y = 1000, *y = 7
d) x = 7, y = 5, *y = 5
What does this print out?#include <stdio.h>int myFunction(int x[], int num); int main(void){ int result=0; int array[3] = {5, 2, -3}; result = myFunction(array,3); printf(“%d, %d\n”, array[1], array[2]); } int myFunction(int x[], int num){ x[1] = 4; x[2] = 7; return(x[1]+x[2]);}
c) 4, 7b) 5, 11a) 5, 2
d) 2, 11
SWITCHING GEARS TO MATLAB…
Will this piece of code work? If not, why?
>>A = [1 2 3; 3 5 6]>>B = [2 4 6; 6 10 18]>>C = B*A
This code will not work because ‘*’ is used for matrixmultiplication and in matrix multiplication you need the same number of columns in B as rows in A.
Will this piece of code work? If not, why?
>>A = [1 2 3; 3 5 6]>>B = [2 4 6; 6 10 18]>>C = B.*A
This code will work because ‘.*’ means multiply eachelement of B with the same element of A. In order touse ‘.*’, A and B need to be the same dimensions.
What does C store?
>>A = [1 2 3; 3 5 6;1 2 1]>>B = [2 4 ; 6 1]>>C = B.*A(2:3,1:2)
c) 4 12 30 6
b) 2 8 18 5
a) 6 20 6 2
d) 10 24 12 1
What does B store?
>>A = [1 2 3; 3 5 6;1 2 1]>>B = max(A)
c) 6 5 6
b) 3 6 2a) 6
d) 3 5 6
What does C store?
>>A = [1 2 3; 3 5 6;1 2 1]>>B = max(A)>>C=max(B)
c) 6 5 6
b) 3 6 2a) 6
d) 3 5 6
What does B and C store?
>>A = [1 2 3; 3 5 6;1 2 1]>>[B,C] = max(A)
c) B = 6 5 6 C = 1 1 1
b) B = 3 6 2 C = 3 3 2
a) B= 6 C = 4
d) B = 3 5 6 C = 2 2 2
What does D and E store?
>>A = [1 2 3; 3 5 6;1 2 1]>>[B,C] = max(A)>>[D,E] = max(B)
c) D = 6 E = 2
b) D = 6 E = 3
a) D= 6 E = 4
d) D = 3 5 6 E = 3
TOPIC CHANGE: Exploring data
Define x and y and call the plot function
Engineers always add …Title
title(‘y = cos(x)’)X axis label, complete with units
xlabel(‘x-axis’)Y axis label, complete with units
ylabel(‘y-axix’)Often it is useful to add a grid
grid on
Single quotes are used.
Creating multiple plotsMATLAB overwrites the figure window every time you request a new plotTo open a new figure window use the figure function – for example figure(2)
Create multiple lines on a single graph
Each set of ordered pairs will produce a new line
If you want to create multiple plots, all with the same x value you can…Use alternating sets of ordered pairs plot(x,y1,x,y2,x,y3,x,y4)Or group the y values into a matrix z=[y1;y2;y3;y4] plot(x,z)
x = 0:pi/100:2*pi; y1 = cos(x); y2 = cos(x)*2; y3 = cos(x)*4; y4 = cos(x)*6;
Line, Color and Mark StyleYou can change the appearance of your plots by selecting user defined line styles mark styles colorTry using
help plotfor a list of available styles
Specify your choices in a string
For exampleplot(x, y, ':ok')
strings are identified with single quotes the : means use a dotted line the o means use a circle to mark each
point the letter k indicates that the graph
should be drawn in black (b indicates blue)
Available choicesTable 5. 2 Line, Mark and Color Options
Line Type Indicator Point Type Indicator Color Indicator
solid - point . blue b
dotted : circle o green g
dash-dot -. x-mark x red r
dashed -- plus + cyan c
star * magenta m
square s yellow y
diamond d black k
triangle down v
triangle up ^
triangle left <
triangle right >
pentagram p
hexagram h
specify the drawing parameters for each line after the ordered pairs that define the line
top related