Explainthe order in which the operators and
Side effects take place. Justify the explanation based on the output of program.
program:
#include <stdio.h>
int f(int *a)
{
*a *= 2;
printf("(%d)", *a);
return *a + 1;
}
int main()
{
int x = 2, z = 0;
printf("lab8c: ");
z = !f(&x)?--z:f(&z);
printf(" x %d, z %d\n", x, z);
}
output:
lab8c: (4)(0) x 4, z 1
The answer to this question is as follows:
The explanation is as follows:
The major operations are used are conditional operation and then 0 means true and 1 means false
i,e if the integer value other than 0 is false and then we are using the not operator and then passing the address of the value to the pointer variable
and we are using the pre-decrement operator also it decrements the value before assigning to any variable;
The statement z = !f(&x)?--z:f(&z);
Here the execution starts before the left-hand side of the question mark i.e !f(&x)
step1:
The value that is passing to the function is x=2
then *a=a*2 then a=2 then we the value of a=2*2=4
first, it will print the value lab8c:
then print the (4) then returning the value 5
then we are checking !f(5) i.e !5 will give the value i,e !true results the value false
if it is false then the statement f(&z) the initial value of z=0
Step 2:
Then executing the function again we are passing value the value 0 then printing the value
(0)
and returning the value 1 and it is assigned to z
z=1
then print the value of the x and z
it prints the x 4 , z 1
Explainthe order in which the operators and Side effects take place. Justify the explanation based on...
1 Rewrite the following program so that it will use function. include <stdio.h> Int main) printf ("Hello!") return 0 2 Assume a program has the following declarations: short s- 4 int i--5; long m-3 float f-19.3f; double d-3.6; What are the following values? (a) s+m (b) (float) d (c) d s (e) (int) f 3 What will be the output of the following program: int x = 3 float a 2.76; y-2* x; print f("X-2d, y*ta, z»%d", x, y, z);...
PART FOUR:(20 points) Predict the output that would be shown in the terminal window when the following program fragments are executed 1. Assume that an int variable takes 4 bytes and a char variable takes 1 byte #include<stdio.h> int main() int A[]-{10, 20, 30, 40); int *ptrl - A; int ptr2 = A +5; printf("The Resull: %d\n".(ptr2-ptrl)); printf("The Resul2: %d\n".(char*)ptr2-(char*)ptr); return 0; 2. What does the following program print? #include <stdio.h> int main(void) unsigned int x 1: unsigned int total...
Q1) Including the initial parent process, how many processes are created by the program shown in Figure 1? Give an explanation for your answer. You can include an output statement to test and run the program. A sample output statement could be: printf("Testing......"); #include <stdio.h> #include <unistd.h> int main() { /*fork a child process*/ fork(); /*fork another child process*/ fork(); /*fork another child process*/ fork(); return 0; } Figure 1a - How many processes are created? Another version, now displaying...
What is the output? #include <sys/types.h> #include <sys/wait.h> #include <stdio.h> #include <stdlib.h> #include <unistd.h> int main() { int x = 5; int y = 2; int z = 30; x = fork(); y = fork(); if (x != 0) printf("Type 1\n"); if (y != 0) printf("Type 2\n"); z = fork(); if (x > 0 || y > 0 || z > 0) printf("Type 3\n"); if (x == 0 && y == 0 && z != 0) printf("Type 4\n"); if (x...
In
C language
5. What is the OUTPUT of each of these programs? If you aren't confident of an answer, type mpile and run the program to test it. (a) <stdio.h> #include int main main int count; int sum0; for (count 1; count10; count++) sum sum+ count; for count printf("sum= %d\n", return 0; sum); )main (b) #include int main ) <stdio.h> main/ int count; int sum -0 for (count 1 count10; count 2) sum sum + count; for count print...
Could you please provide a detailed step by step explanation as to how I should go about obtaining the output shown for each program fragment. Thanks. a) int f1 (int x) { int y=3; printf("%d%d",x,y); return x++; } int main (void) { int y=6, x=4; printf("%d\n",f1(y)); printf("%d%d\n",x,y); return 0; } OUTPUT: x=6, y=36 x=4, y=6 b) void f2(int n, int a[]) { for (int i=0;i<n;i++) a[i] += a[i+1]; } int main() { int A[]={1,2,3,3,4,5};int i, N=6; for (i=0;i<N;i++) printf("%d ",A[i]);...
C programming problem please help my computer crashed
what is the output of each program ?
(c) #include <stdio.h> int main() { /* main */ int f3, t = 9; int func3 (int x); printf("Inside main, t = $d\n", t); f3 - func3(t); printf("Inside main, f3 = %d\n", f3); return 0; } /* main */ int func3 (int x) { /* func3 */ printf("Inside func3, X = %d\n", x); return x; } /* func3 */ (d) #include <stdio.h> int main()...
this is c code. please answer all questions on a piece of paper and
show work. i need to prepare as i have a midterm i will have to be
completing on paper
1) Bit Operators: This C program compiles and runs. What is its output? 1) #include <stdio.h> 2) void main (void) 3) unsigned char x =60; 4) 5) 6) 7) 8 ) 9) 10) 11) 12) 13) unsigned char a = x < 1; unsigned char b unsigned...
1. What is the output of the following program? include <stdio.h> int wilma (int x) if (x<5) x = 7; return (x) int main (void) int x-1 x=wilma (x) ; printf ("%d", x); return (0) b)3 c) 4 d) 7 a) 1 e) none of these
What is the output of the following program? Show each step to get to the output #include <stdio.h> int f(int* a, int* b); int main() { int a = 6, b = 7, c = 8; b = f(&c, &a); printf("a = %d, b = %d, c = %d\n", a, b, c); return 0; } int f(int* a, int* b) { *a = *a + *b; *b = *a - *b; printf("a = %d,...