Ex No 
Pg No 
Exercise 
Solution 
Solved by 

1  36 
Write a program to determine the ranges of char , short , int , and long
variables, both signed and unsigned , by printing appropriate values from
standard headers and by direct computation. Harder if you compute them: determine
the ranges of the various floatingpoint types.

Listing krx201 
Rick Dearman 
2  42 
Write a loop equivalent to the for loop above without using && or  .

Listing krx202 
"flippant_squirrel" (!) and Craig Schroeder 
3  46 
Write the function htoi(s) , which converts a string of hexadecimal
digits (including an optional 0x or 0X) into its equivalent integer
value. The allowable digits are 0 through 9, a through f, and A through F .

Listing krx203 
Richard Heathfield 
4  48 
Write an alternate version of squeeze(s1,s2) that deletes each character
in the string s1 that matches any character in the string s2 .

Listing krx204 
Richard Heathfield 
5  48 
Write the function any(s1,s2) , which returns the first location in the
string s1 where any character from the string s2 occurs, or 1 if s1
contains no characters from s2 . (The standard library function strpbrk does
the same job but returns a pointer to the location.)

Listing krx205 
The pedestrian solution is Richard Heathfield's, and the clever one is by Partha Seetala. 
6  49 
Write a function setbits(x,p,n,y) that returns x with the n bits that
begin at position p set to the rightmost n bits of y, leaving the other
bits unchanged.

Listing krx206 
Richard Heathfield 
7  49 
Write a function invert(x,p,n) that returns x with the n bits that begin at
position p inverted (i.e., 1 changed into 0 and vice versa), leaving the others unchanged.

Listing krx207 
Gregory Pietsch 
8  49 
Write a function rightrot(x,n) that returns the value of the integer x rotated to the
right by n bit positions.

Listing krx208 
Gregory Pietsch 
9  51 
In a two's complement number system, x &= (x1) deletes
the rightmost 1bit in x . Explain why. Use this observation to write a
faster version of bitcount .

Listing krx209 
Gregory Pietsch 
10  52 
Rewrite the function lower, which converts upper case letters
to lower case, with a conditional expression instead of ifelse .

Listing krx210 
Bryan Williams 