In a timeline pinch (Suspense: 25Jul05) pleading for assistance - Q1

  • Thread starter Daniel Antonson
  • Start date
D

Daniel Antonson

Fellow programmers,

As one of you pointed out, I've been taking 3 online courses (2 are done)
and have run into a time crunch. I started these courses in Oct04, but
between work (US Army in DC), caring for my wife (stroke in Dec03 due to
lupus complications) & daughter (4), and preparing for transfer/deployment
(my stepson,- 23, says he'll care for them during my absence). I've had
little time for anything else.

I would greatly appreciate your assistance. Granted, it isn't the proper
approach, but the time
remaining demands urgent solutions.

very respectfully,
Daniel

1. Which of the following usually indicates that there is no more input to
be read by a program?

a. '\n'
b. '\0'
c. END
d. EOF


2. What is the effect of the following code?
char Ch;
Ch = '7';
printf("%d\n", Ch);

a. It will cause an error
b. It will print out the computer's internal code for the character '7'
c. It will print out the character '7'
d. It will print out the character whose internal code is 7


3. What is the effect of the following code?
char Ch;
while ((Ch=getchar() ) != ';')
putchar (Ch);

a. It will read and write characters until something other than a ; is read.
b. It will read characters up to and including the first semicolon, and
write characters up to but not including the first semicolon.
c. It will read and write characters up to but not including the first
semicolon.
d. It will skip characters up to the first semicolon, then write the next
character.


4. It is necessary to use an int instead of a char for processing a
character:

a. whenever a computation is performed on the character.
b. whenever a test for EOF is made.
c. whenever the character is passed as a parameter to a function.
d. It is never necessary to use an int for character processing.


5. What characters are output by the following code:

char Ch='/';
while (Ch != 'd')
{
putchar(Ch);
Ch = getchar();
}

given the following input? abcdefghi

a. abc
b. d
c. /abc
d. /efghi


6. What is the effect of the following code?

char Ch;
while ((Ch = getchar()) != '\n')
putchar(' ');

a. It reads and writes exactly one line with a blank after each character.
b. It reads one line but outputs only blanks.
c. It reads a line and then outputs one blank.
d. It reads and writes one line with all blanks replaced by newlines.


7. In general, when an int is combined with a long in an expression, the
result is:

a. int
b. long
c. double
d. A syntax error


8. Given the following declarations:

int N;
char C;
float X;

what is the type of the expression C+N*X?

a. char
b. int
c. float
d. The expression contains a syntax error


9. Given the following declarations and initialization:

int i = 1;
int x = 2.0;

What is the value and type of the expression i/x?

a. .5 double
b. .5 int
c. 0.0 float
d. 0 int


10. Given the following declarations and initializations:

int n = 8;
int z = 2.0;

What is the value and type of the expression z=n?

a. 8 int
b. 8 float
c. 8 double
d. 8 unsigned


11. Which of the following statements is true?
a. int expressions are always computed exactly; but float expressions can
suffer round-off error
b. float expressions are always computed exactly; but int expressions can
suffer round-off error
c. Both int and float expressions can suffer round-off error
d. Both int and float expressions will always be computed exactly


12. Given the following declarations:

int N;
float X;

what is the type of the expression X%N?

a. int
b. float
c. double
d. can't use float with %


13. Choose the C statement which defines an enumeration type fuzzy
consisting of values false, maybe, and true. Defined so that maybe is
greater in value than false but less than true.

a. enum fuzzy {false, maybe, true};
b. enum fuzzy {true, false, maybe};
c. enum fuzzy {false, maybe, true}
d. enum fuzzy {true, maybe, false};


14. Given the type definition below:

enum color {red, yellow, green, blue};

what is the value of the expression (int) blue?

a. 2
b. 3
c. 4
d. blue


15. Which of the following statements allocates space for a variable of the
defined enum type?

a. enum color {red, yellow, blue} paint;
b. enum color {red, yellow, blue};
c. enum {red, yellow, blue} paint;
d. a and c


Answer questions 16 and 17 given the following values for the int variables
X and Y

X=1100110000110011
Y=0000111100001010


16. What is the binary representation of X<<5?

a. 1000011001100000
b. 1000011001111111
c. 0000110011000000
d. 0000110011111111


17. What is the two's complement of -Y (negative Y)?

a. 0000111100001010
b. 1111000011110101
c. 1111000011110110
d. 1100000000110001


18. If X is an int variable, what do we know about the value of X&X?

a. It is always equal to X.
b. It is always greater than 1.
c. It is always equal to zero.
d. It is always equal to 1.


19. A pointer variable contains:

a. an integer.
b. the address of another variable.
c. any data type.
d. a character string.


20. The term "dereferencing" means:

a. taking the address of another variable.
b. deleting a variable.
c. retrieving the value of a variable given its address.
d. making an assignment to a pointer variable.


21. Which of the statements below is true of the following declaration:

int n=5, *p=&n;

a. p is a pointer initialized to point to n.
b. p is a pointer initialized to the value 5.
c. n and p are both pointer variables.
d. The declaration contains a syntax error


22. Call-by-reference is:

a. not available in C.
b. accomplished by declaring a formal parameter to be a pointer.
c. accomplished be using a de-referenced pointer as a parameter.
d. accomplished by putting an ampersand (&) in the formal parameter.


23. If you want a variable declared inside a function to retain its previous
value when the block is re-entered, what type of storage class should you
use?

a. auto
b. static
c. register
d. extern


24. The address operator & cannot be applied to which of the following?

a. constants
b. expressions
c. variables of class register
d. All of the above


25. Write the output produced by the following code:

int x=5, y=6, *p=&x, *q=&y;
x=*q;
*p = *q + 2;
*q=x;
printf("%d %d %d %d\n", x, y, *p, *q);

a. 8 8 8 8
b. 5 6 5 6
c. 6 8 5 6
d. 6 8 6 8
 
J

John Smith

Daniel:

Just off the top of my head, without checking any of my answers, here
is what I have to offer (the ????? means I DEFINENTLY do not
know--double check the answers I did give against others,some of those
questions are a bit tricky--hope this helps):
1) d.
2) b.
3) a.
4) d.
5) c.
6) b.
7) b.
8) c.
9) d.
10) a.
11) a.
12) ????????????????
13) a.
14) b.
15) b.
16) a.
17) ????????????
18) a.
19) b.
20) c.
21) a.
22) ??????????
23) b.
24) d.
25) b.

John
 
H

Howard

Daniel Antonson said:
Fellow programmers,

As one of you pointed out, I've been taking 3 online courses (2 are done)
and have run into a time crunch. I started these courses in Oct04, but
between work (US Army in DC), caring for my wife (stroke in Dec03 due to
lupus complications) & daughter (4), and preparing for transfer/deployment
(my stepson,- 23, says he'll care for them during my absence). I've had
little time for anything else.

I would greatly appreciate your assistance. Granted, it isn't the proper
approach, but the time
remaining demands urgent solutions.

very respectfully,
Daniel

Yeah, I'd agree. This isn't the proper approach.

No amount of hardship justifies us simply giving you the answers to your
homework. Plus, it won't help you, and it won't help anyone else, if you
pass a course simply by having the answers fed to you.

Please, folks, don't give him the answers!

-Howard
 
J

John Smith

Daniel:

After thinking about it a bit, my best guesses on the questions I
didn't answer at first are:
12) d.
17) b.
22) b.

John
 
J

John Smith

Daniel:

If you use all my answers, at the very least you will get a passing
grade...

John
 
A

Alan Johnson

Daniel said:
2. What is the effect of the following code?
char Ch;
Ch = '7';
printf("%d\n", Ch);

a. It will cause an error
b. It will print out the computer's internal code for the character '7'
c. It will print out the character '7'
d. It will print out the character whose internal code is 7

I don't have a copy of the C standard handy to check, but I think that
none of these is actually correct, as the program fragment exhibits
undefined behavior.
 
J

John Smith

Alan:

The code obviously prints out the ascii value (55) of the character
'7'.

%d instructs the printf statement to print an integer representation

John
 
D

David White

John said:
Daniel:

If you use all my answers, at the very least you will get a passing
grade...

And he won't have learned a thing. Perhaps you can explain to us what you
think the purpose of a course is?

DW
 
J

John Smith

David:

I obviously do not need to explain anything at all to you, your are
rude and quite egotistical in even suggesting I should. What foreign
country have you been spawned in.

Put simply, "NONE OF YOUR DAMN BUSINESS!"

Besides, that is a very simplistic test, anyone with a text book on c
could get to that speed in hours... just been decades since I was in
college and I am a bit old, rusty and slow :(
--or--
I would have answered more quickly!

John
 
R

red floyd

John said:
Alan:

The code obviously prints out the ascii value (55) of the character
'7'.

%d instructs the printf statement to print an integer representation

John

But Ch isn't cast to an int, and since printf() is variadic, there is no
guarantee as to what is actually passed as a parameter. I also do not
have my copy of the Standard available, but I'd be willing to bet it's UB.
 
R

red floyd

John said:
[redacted]

Oh, and please don't top post, though since you apparently don't care
about the rules of etiquette for this NG (i.e. answering a blatant
"Do-my-homework" request in full), I doubt you'll care about that either.
 
J

John Smith

Red:

This will work:

char ch = '7';

printf("ch = %ld\n", ch);

not only will it work on an ibm pc, but has worked on any mainframe I
have ran on over the decades...

printf("ch = %d\n", (int)ch);
--or--
printf("ch = %ld\n", (long double)ch);

will also work great...

weather the c standard mentions that the upper bits of a larger type
used in a printf will always be guaranteed to be zero or not, I do not
know, nor care, they have been on every system I have ran... at this
point I would have to seen an error occur to get worried, and see
garbage printed out when an int %d in a printf statement is fed a
char...

.... it would not surprise me at all if the new "c" standard mentions a
type cast is automatically done on the data, as fits the occasion...

John
 
J

John Smith

Red:

Now here you are quite correct.

The old standards of news groups needs up-dating.

If you need my text formatted in some particular fashion to meet your
standards--write a plug-in for your news reader.

I give you my full permission to view my text in any form which would
please you. You need not ask my permission for any future postings...

If you need help with programming the plug-in, just ask...

John

red floyd said:
John said:
[redacted]

Oh, and please don't top post, though since you apparently don't
care about the rules of etiquette for this NG (i.e. answering a
blatant "Do-my-homework" request in full), I doubt you'll care about
that either.
 
M

Me

2. What is the effect of the following code?
But Ch isn't cast to an int, and since printf() is variadic, there is no
guarantee as to what is actually passed as a parameter. I also do not
have my copy of the Standard available, but I'd be willing to bet it's UB.

Default argument promotions are done to values passed to the ... in
varadic functions so char gets promoted to int (or unsigned int on
weird implementations) here.
 
O

Old Wolf

David said:
And he won't have learned a thing. Perhaps you can explain to us what you
think the purpose of a course is?

I wouldn't worry too much.. judging by the other clunkers that
"John Smith" has come up with on this thread, the OP would probably
fail the test anyway. For example:
 
B

Bill

red said:
SNIP


But Ch isn't cast to an int, and since printf() is variadic, there is no
guarantee as to what is actually passed as a parameter. I also do not
have my copy of the Standard available, but I'd be willing to bet it's UB.

The code is standard compliant and correct. char is always promoted when
passed as an argument.

I'm a little surprised at all the posts where people seem to want to
guess at the standard rather than actually reading it.

Bill
 
B

Bill

Bill said:
SNIP............


I'm a little surprised at all the posts where people seem to want to
guess at the standard rather than actually reading it.

Bill


Following up my previous posting, the relevant sections in the C++
standard are Section 5.2.2, Paragraph 7, and Section 4.5.

Bill
 
K

Karl Heinz Buchegger

John said:
David:

I obviously do not need to explain anything at all to you, your are
rude and quite egotistical in even suggesting I should. What foreign
country have you been spawned in.

Put simply, "NONE OF YOUR DAMN BUSINESS!"

Besides, that is a very simplistic test

Right. And this is exactly why the OP should be able to answer all of the
questions. Anybody who cannot answer at least most of those questions simply
should not call himself a programmer.
 
R

red floyd

Bill said:
[redacted]
Following up my previous posting, the relevant sections in the C++
standard are Section 5.2.2, Paragraph 7, and Section 4.5.

Bill

Thanks for the chapter&verse. I *said* I had a standard, but was
posting from home. Now I know. Thank you.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,769
Messages
2,569,578
Members
45,052
Latest member
LucyCarper

Latest Threads

Top