What will the following code printout?
void Function(int *ptr)
{
*ptr = 11;
}
// In Main...
int values[] = {4, 10, 6, 12, 8, 14};
int *p = &values[4];
Function(p);
for(int i = 2; i < 5; i++)
cout << values[i] << ' ';
a) 6 12 8 14
b) 6 12 8
c) 4 10 6 11 8 14
d) 6 12 11
e) 6 12 11 14
I know the answer is D, but I do not know why! Can someone please explain it to me ! Thank you
Function(p); Here p points to the 5th value in the values array. we are passing p as pointer So, changing the value at function reflect in main() method. *ptr = 11; This changes values[4] to 11 for(int i = 2; i < 5; i++) As the values of i during the loop iterations are 2,3,4, So, This loop runs for 3 times So, it prints the values at indexes 2,3,4 values[2] is 6 values[3] is 12 values[4] is 11 (after the function call) That's why the output is 6 12 11
What will the following code printout? void Function(int *ptr) { *ptr = 11; } // In...
Explain what each line of the following snippet of code does: int *ptr; ptr = new int; *ptr = 10; cout << ptr << ' ' << &ptr << ' ' << *ptr; delete ptr; cout << ptr << ' ' << &ptr << ' ' << *ptr;
#include <iostream> using namespace std; struct node { int base; int power; }; void insert(node ptr[],int basee,int powerr) { ptr[powerr].power=powerr; ptr[powerr].base=basee; } void addition(node ptr1[],int size1,node ptr2[],int size2,node ptr3[],int size3) { for(int j=0;j<=size1;j++) { ptr3[j].base=ptr3[j].base+ptr1[j].base; } for(int j=0;j<=size2;j++) { ptr3[j].base=ptr3[j].base+ptr2[j].base; } } void display(node ptr[],int size) { if(ptr[0].base!=0) cout<<ptr[0].base<<"+"; for(int i=1; i<=size; i++) { if(ptr[i].base!=0) cout<<ptr[i].base<<"x^"<<ptr[i].power<<"+"; } } int main() { bool choice1=true; bool choice2=true; int size1,size2,base1,base2,power1,power2; cout<<"enter the max power in polynominal 1"; cin>>size1; node *a= new node[size1+1]; for(int...
Please help me debug the following code
#include
int main(void){
int a = 11, b = 5;
int *ptr1 = &a, *ptr2 = &b;
printf("%d %d\n", *ptr1, *ptr2);
swap(&ptr1, &ptr2);
printf("%d %d\n", *ptr1, *ptr2);
minimum(ptr1, ptr2);
printf("%d %d\n", a, b);
return 0;
}
// Part A
void swap(int **ptr1, int **ptr2){
int *temp = *ptr1;
*ptr1 = *ptr2;
*ptr2 = temp;
return;
}
// Part B
void minimum(int *ptr1, int *ptr2){
if(*ptr1 > *ptr2){
*ptr1 = *ptr2;
}else{
*ptr2 =...
#include <iostream> using namespace std; struct node { int base=0; int power=0; }; void insert(node ptr[],int basee,int powerr) { ptr[powerr].power=powerr; ptr[powerr].base=basee; } void subtract(node ptr1[],int size1,node ptr2[],int size2,node ptr3[]) { for(int j=0;j<=size1;j++) { if(ptr1[j].base!=0) { ptr3[j].base=(ptr3[j].base)+(ptr1[j].base); ptr3[j].power=ptr2[j].power; } } for(int j=0;j<=size2;j++) { if(ptr2[j].base!=0) { ptr3[j].base=(ptr3[j].base)-(ptr2[j].base); ptr3[j].power=ptr2[j].power; } } } void addition(node ptr1[],int size1,node ptr2[],int size2,node ptr3[]) { for(int j=0;j<=size1;j++) { if(ptr1[j].base!=0) { ptr3[j].base=(ptr3[j].base)+(ptr1[j].base); ptr3[j].power=ptr2[j].power; } } for(int j=0;j<=size2;j++) { if(ptr2[j].base!=0) { ptr3[j].base=(ptr3[j].base)+(ptr2[j].base); ptr3[j].power=ptr2[j].power; } } } void display(node ptr[],int size)...
Give the output for the following code assume int globalvar 10: above the function prototypes void foo(int&); void bar(int); int main() { int globalVar = 5; foo(globalVar); cout << globalVar << endl; bar(globalVar); cout << globalVar << endl; return 0; } void foo(int& x) { x = globalVar + x; cout << globalVar << endl; return; void bar(int x) { globalVar + x; cout << globalVar << endl; X = return;
11) What is the output of the following Che statements? void Exam(int N) { int list1[3] { 2, 4, 6); if (NX2 - 0) cout << listi[N - 1); else cout << listi[N 5):) void main() { int list[3] - (1, 3, 5); Exam(list[2]);} A) 2 B) 4 C) 6 D) 3 12
10) What is the output when the following code fragment is executed? void exam(int i) {cout « i; } void main() { int n; for (n = 3; n <= 4; n++) exam(n); } A) 1234 B) 234 C) 34 D) 4
#include <iostream> using namespace std; const int SIZE = 10; void displayGreaterThan(int[], int); void displaySmallerThan(int[],int); void displayArrayContent(int[]); void displayLargestValue(int[]); void displaySmallestValue(int[]); int main(){ int number; int numbers[SIZE] = {9,1,90,98,53,22,76,29,37,65}; cout <<"Enter a number: "; cin >> number; cout << endl; displayGreaterThan(numbers,number); cout << endl; displaySmallerThan(numbers,number); cout << endl; displayArrayContent(numbers); cout << endl; displayLargestValue(numbers); cout << endl; displaySmallestValue(numbers); cout << endl; return 0; } void displayGreaterThan(int value[],int num){ cout << " All larger value(s)than" <<...
Consider the following code snippet. What will be printed by *ptr and ptr after the lines shown. Explain with screenshots. int a[4] = { 8, 3, 5, 6}; int *ptr = a; ptr ++;
using C++ only. The findFirstZero function is supposed to find the first element in an array whose value is zero, and sets the parameter p to point to that element, so the caller can know the location of that element holding the value zero. Explain why this function won't do that, and show how to fix it. Your fix must be to the function only; you must not change the main routine below in any way. As a result of your fixing...