# Problem 2 Add the two 2 s complement signed 8-bit values given below, and express your answer in decimal.

Save this PDF as:

Size: px
Start display at page:

## Transcription

1 Problem 1 Recall the definition of root in project 1. (The declaration of struct entrynode appears below.) struct entrynode * root; Give the type of each of the following expressions. The answer may be error. Assume that root and the fields that it points to have all been initialized with reasonable values. (root->name)[3] char if the name contains at least three characters &(root->parent) struct entrynode ** root.next error (should be ->, not. ) root->contents error (should be root->entry.contents) Definition of struct entrynode struct entrynode { char * name; struct entrynode * next; /* sibling */ int isdirectory; struct entrynode * parent; union { char * contents; /* for a text file */ struct entrynode * entrylist; /* for a directory */ entry; ; [Note: we didn t cover union in fall08 CS 61CL.] Problem 2 Add the two 2 s complement signed 8-bit values given below, and express your answer in decimal = -6 A1

2 Problem 3 Complete the framework below to complete the implementation of the appendfiles function for project 1. appendfiles takes four arguments: a pointer to the working directory; the name of a text file in the working directory; the name of another text file in the working directory; the name of a text file to create, which will contain the concatenation of the contents of the first and the second files. You may assume that the functions located and inserted have already been defined. Here are their headers (the declaration of struct entrynode appears with an earlier problem on this exam): /* The list of entries is sorted alphabetically by name. Return the result of inserting the new entry into the list. */ struct entrynode * inserted (struct entrynode * newfile, struct entrynode * list); /* Return a pointer to the entry with the given name in the given list, or NULL if no such entry exists. */ struct entrynode * located (char * name, struct entrynode * list); void appendfiles (struct entrynode * wd, char * filename1, char * filename2, char * newname) { struct entrynode * file1 = located (filename1, wd->entry.entrylist); struct entrynode * file2 = located (filename2, wd->entry.entrylist); if (file1 == NULL) { printf ("append: file %s not found\n", filename1); else if (file2 == NULL) { printf ("append: file %s not found\n", filename2); else if (file1->isdirectory) { printf ("append: can't append directory %s\n", filename1); else if (file2->isdirectory) { printf ("append: can't append directory %s\n", filename2); else if (located (newname, wd->entry.entrylist)) { printf ("append: can't overwrite file %s\n", newname); else { struct entrynode * newfile; // YOU PROVIDE THIS CODE. wd->entry.entrylist = inserted (newfile, wd->entry.entrylist); A2

3 // 2 points for malloc on node newfile = (struct entrynode *) malloc (sizeof (struct entrynode)); // 2 points for malloc on name newfile->name = (char *) malloc (strlen(newname)+1); // 2 points for strcpy strcpy (newfile->name, newname); // 3 points for malloc on contents newfile->entry.contents = (char *) malloc (strlen(file1->entry.contents) + strlen(file2->entry.contents) + 1); // 3 points for contents copy strcpy (newfile->entry.contents, file1->entry.contents); strcpy (newfile->entry.contents + strlen(file1->entry.contents), file2->entry.contents); // 2 points for the rest of newfile newfile->isdirectory = 0; newfile->parent = wd; A3

4 Problem 4 Part a Given the following definition, struct node { char name[12]; int value; ; what is sizeof (struct node)? Assume that the sizes of chars and ints are the same as on the 271 Soda computers. 1 point, all or none. The answer is 16 bytes. Problem 5 The following program includes the buggy swap function encountered in a pre-lecture quiz. Some students observed that this function worked because of values accidentally in memory. #include <stdio.h> void swap (int *a, int *b) { int *temp; *temp = *a; *a = *b; *b = *temp; int main ( ) { int x, y, z; x = 2; y = 3; f ( ); /* Supply the argument(s) to f. */ swap (&x, &y); printf ("The values of x and y are now %d and %d.\n", x, y); return 0; In the space below, supply the definition of a function f, and supply a call to f in the blank above, that will guarantee that the program will not work, that is, it will crash when the uninitialized temp pointer is dereferenced. Also explain why your call guarantees that swap will crash. Their solution has to have a local variable in the proper orientation that gets initialized to 0, for example: void f (int a, int* b) { int c; c = 0; 3 points in all: A4

5 1 for the code; 1 for saying something reasonable about a position on the stack 1 for saying something reasonable about a value sure to produce a crash when dereferenced A5

6 Problem 6 Write a C function named copystrarray that, given an integer count and an array strarray that contains count strings, returns a pointer to a complete ( deep ) copy of the array. (In Java terminology, this would be a clone.) For example, the program segment int main (int argc, char **argv) { char **ptr; ptr = copystrarray (argc, argv);... would place in ptr a pointer to a copy of argv, the command-line argument structure. You may use brackets and other array notation in your solution. You may assume that there is sufficient free memory in which to build the copied structure. Make no assumptions about the size of a pointer or a char. Include all necessary casts, and allocate only as much memory as necessary. You may use any function in the stdio, stdlib, or string libraries. char **copystrarray (int count, char **strarray) { char **copy; char **temp; int k; copy = (char **) malloc (count*sizeof(char *)); temp = copy; for (k=0; k<count; k++) { (*temp) = (char *) malloc (((strlen(*strarray)+1)*sizeof(char)); strcpy (*temp, *strarray); temp++; strarray++; return copy; If only one malloc, deduct 2; if no mallocs, deduct 4. Otherwise: (1.5 points) malloc ing the 1-d array of pointers (with the correct length and cast); (1.5 points) malloc ing the space for each string (with the correct length and cast); (1.5 points) copying the string into the right place (1.5 points) everything else: traversing the 1-d array of pointers; loop control, declarations, return value. This probably works out to -1/2 per small error. Problem 7 Consider the following C program. #include <string.h> int main ( ) { char onename[10] = "xxxxxxxxx"; char* anothername; anothername = onename; A6

7 strcpy (anothername, onename); onename[1] = 'O'; return 0; Draw the box-and-pointer diagram that represents the onename and anothername arrays and their contents after executing this segment. onename ----> "xoxxxxxxx" followed by null char ^ anothername ---+ Anticipated errors: no sharing; only part sharing, no arrows, off-by-one indexing. two copies of string => -3 anothername nil => -3 anothername points to last char of onename string => -2 anothername points to onename, which points to char => -2 off by one on char assignment => -1 off by one on count of chars => -1 didn t show trailing null => -1 Problem 8 Write a C function named resultofinsert that, given a string s, a character c, and a position k between 0 and strlen(s), inclusive, returns the string that results from inserting c into s at position k. For example, resultofinsert ("abcd", '_', 2) should return the string "ab_cd". The insertion should not change the argument string. You may use any functions declared in <string.h>. You don t need to do any error checking. char *resultofinsert (char *s, char c, int k) { malloc call is worth 2 points, 1 for trying it and 1 for getting it right. everything else is worth 3 points: -1 for each error, like off-by-one, forgetting terminating 0, using = for ==, forgetting to return something Solution code: char *resultofinsert (char *s, char c, int pos) { char *rtn = (char *) malloc (strlen(s)+2); int k; for (k=0; k<pos; k++) { rtn[k] = s[k]; rtn[pos] = c; for (k=pos; k<=strlen(s); k++) { rtn[k+1] = s[k]; return rtn; A7

8 Another solution: for (k=0, j=0; k<=strlen(s); k++, j++) { if (k==pos) { rtn[j] = c; j++; rtn[j] = s[k]; A8

9 Problem 9 Consider the following C program. #include <stdio.h> struct foo { int *ip; int x; struct foo *p; int a[3]; ; int w[10] = {5, 22, 781, 0, 104, 25, 18, 24, 14, 30; struct foo foo1 = {&w[4], 99, NULL, {11, 12, 13; struct foo foo2 = {w, 87, &foo1, {77, 78, 79; int main ( ) { foo1.p = &foo2; printf("%d\n", foo1.x); printf("%d\n", foo2->x); printf("%d\n", foo2.p->x); printf("%d\n", foo2.p.x); printf("%d\n", foo1.a[1]); printf("%d\n", foo1.a); printf("%d\n", foo1.ip[2]); printf("%d\n", *foo1.ip); printf("%d\n", *(foo1.ip + 4)); printf("%d\n", *(foo1.a + 1)); printf("%d\n", foo1.a + 1); Part a Predict the result of each of the printf lines. (Some may cause compiler errors.) line 1: 99 line 2: compiler error line 3: 99 line 4: compiler error line 5: 12 line 6: wrong format; line 7: 18 line 8: 104 line 9: 14 line 10: 12 line 11: wrong format; Part b List three different ways you could fill in the blank in the statement below to print the value 781 by extracting it from the data structures given in the above program. printf("%d\n", ); Do the same for the values 77 and 87. A9

10 Some ways to get 781: w[2], *(w+2), foo2.ip[2], *(foo2.ip+2) Some ways to get 77: foo2.a[0], *(foo2.a), foo1.p->a[0] Some ways to get 87: foo2.x, foo1.p->x, (*foo1.p).x A10

11 Problem 10 Consider the following C function, intended to append the characters in the second argument to the first argument (modifying the first argument in the process). /* Precondition: s1 and s2 are correctly allocated C-style strings. char* strcat (char *s1, char *s2) { char* ptr = s1; for ( ; *ptr!= '\0'; ptr++) { for ( ; *s2!= '\0'; s2++, ptr++) { *ptr = *s2; return s1; Part a The function compiles without error messages. However, it contains two flaws that are likely to produce execution errors. Describe them. The function may overfill the storage allocated to s1. It doesn't put a terminating null character in the returned string. Part b Suppose that the flaws in the strcat function have been corrected. The program below, calling the revised version of strcat, prints the characters abcdef as expected. void main ( ) { char str1[10] = "abc"; char str2[10] = "def"; printf ("The result of concatenating str1 and str2 is %s.\n", strcat (str1, str2)); Replace the arguments of the strcat call with equivalent arguments that use the & or the * operator. Replacement call: strcat (, ) strcat (&str1[0], &str2[0]); or strcat (&*str1, &*str2); or strcat (*&str1, *&str2); Problem 11 What is printed by the following C program segment, run on the EECS instructional computers? (The notation 0x specifies a hexadecimal constant; in a printf format string, %x specifies output in base 16.) int *ptr; ptr = 0x1050; printf ("%x\n", ptr--); A11

12 printf ("%x\n", ptr); Answers: 1050, 104c 3 points: 1 for correct postincrement, 1 for correct base 16, 1 for correct pointer arithmetic. A12

13 Problem 12 Convert the eight-bit binary value to: a. hexadecimal. F0 b. decimal, interpreting it as a unsigned value. 15*16 = 240 c. decimal, interpreting it as a two s complement signed value. Complement and add 1 to find out what s it s the negative of. Answer = -16. Problem 13 a. Describe the set of numbers that are represented by a 64-bit two s complement integer. -2^63 to 2^63-1 b. Add the following 16-bit integers by hand, show the binary result and translate it to hexadecimal = 5151 base 16 c. Multiply the following 16-bit unsigned integers by hand, show the binary result and translate to hexadecimal * = Check: 1010 = 10 base 10; = 6* = 111 base 10; 10 * 111 = 1110 = 456 hex. Problem 14 Suppose you are given the following (correct) C declarations. char foo = 'A', garply[] = "MIPS", bar = 'C'; char *phi = &foo, *beta = phi, *gamma = garply; In the following, some of the statements are incorrect or illegal; cross out any such bad statements. Show in the spaces provided what the remaining print statements will print when the program is executed. printf("%c", *beta); beta is a char*, so *beta is a char; A is printed printf("%c", phi); phi is a char*, not a char; ERROR printf("%c", *gamma); gamma is a char*; M is printed printf("%s", bar); bar is a char; ERROR A13

14 beta = garply; beta is char *, which is assignment-compatible with garply printf("%c", *(garply + 2)); prints P printf("%s", &garply[1]); prints IPS garply = phi; can t assign to an array name; ERROR printf("%c", *beta); prints M A14

### Strings in C++ and Java. Questions:

Strings in C++ and Java Questions: 1 1. What kind of access control is achieved by the access control modifier protected? 2 2. There is a slight difference between how protected works in C++ and how it

### strsep exercises Introduction C strings Arrays of char

strsep exercises Introduction The standard library function strsep enables a C programmer to parse or decompose a string into substrings, each terminated by a specified character. The goals of this document

### The if-statement. Simple and compound statements. The if-statement comes in two forms: Simple statements:

1 2 Simple and compound s The if- Simple s: E.g.: expression; Various jumps : break, goto, continue, return. k = a * p + 3; printf("k = %d\n", k); 1 + 2; ; The if- comes in two forms: or E.g.: if (expression)

### an array of 10 characters would require 10 bytes of storage for data. On the other hand, would require 10*sizeof(int) amount of storage.

Lecture 05 C Arrays & pointers In this lecture Introduction to 1D arrays Array representation, access and updates Passing arrays to functions Array as a const pointer Dynamic arrays and resizing Introduction

### The char Data Type. Character and String Processing. Another Example /* Capitalize all lowercase letters */ while ((c = getchar())!

Character and String Processing CSE 130: Introduction to C Programming Spring 2005 The char Data Type A char value can be thought of as either a character or a small integer printf( %d, a ); /* prints

### Arrays and Pointers (part 1)

Arrays and Pointers (part 1) EECS 2031 25 September 2016 1 Arrays l Grouping of data of the same type. l Loops commonly used for manipulation. l Programmers set array sizes explicitly. 2 1 Arrays: Example

### Common Errors in C. David Chisnall. February 15, 2011

Common Errors in C David Chisnall February 15, 2011 The C Preprocessor Runs before parsing Allows some metaprogramming Preprocessor Macros Are Not Functions The preprocessor performs token substitution

### 1) String initialization can be carried out in the following ways, similar to that of an array :

Strings in C : Overview : String data type is not supported in C Programming. String is essentially a collection of characters to form particular word. String is useful whenever we accept name of the person,

### Standard printing function in C is printf Prints everything numbers, strings, etc. May be complex to use. Standard C library is called libc

Arrays and Structs and Pointers, Oh My! Programming in C Input and output Using printf Standard input and output Pointers Arrays Structures Combining these things together Arrays and Structs and Pointers,

### Introduction to C. Memory Model. Instructor: Yin Lou 02/04/2011. Introduction to C CS 2022, Spring 2011, Lecture 6

Introduction to C Memory Model Instructor: Yin Lou 02/04/2011 Recap: Pointers int *ptr; Pointers are variables that store memory address of other variables Type of variable pointed to depends on type of

### Format String Vulnerability. printf ( user input );

Lecture Notes (Syracuse University) Format String Vulnerability: 1 Format String Vulnerability printf ( user input ); The above statement is quite common in C programs. In the lecture, we will find out

### IC221: Systems Programming 06-Week Written Exam [SOLUTIONS]

IC221: Systems Programming 06-Week Written Exam [SOLUTIONS] February 12, 2014 Answer the questions in the spaces provided on the question sheets. If you run out of room for an answer, continue on the back

### C Primer. Fall Introduction C vs. Java... 1

CS 33 Intro Computer Systems Doeppner C Primer Fall 2016 Contents 1 Introduction 1 1.1 C vs. Java.......................................... 1 2 Functions 1 2.1 The main() Function....................................

### M3-R4: PROGRAMMING AND PROBLEM SOLVING THROUGH C LANGUAGE

M3-R4: PROGRAMMING AND PROBLEM SOLVING THROUGH C LANGUAGE NOTE: IMPORTANT INSTRUCTIONS: 1. Question Paper in English and Hindi and Candidate can choose any one language. 2. In case of discrepancies in

### A Rudimentary Intro to C programming

A Rudimentary Intro to C programming Wayne Goddard School of Computing, Clemson University, 2008 Part 4: Strings and Pointers 18 Strings.................................... D1 19 String Functions..............................

Lecture 11 Doubly Linked Lists & Array of Linked Lists In this lecture Doubly linked lists Array of Linked Lists Creating an Array of Linked Lists Representing a Sparse Matrix Defining a Node for a Sparse

### Characters and Strings. Constants

Characters and Strings Constants Characters are the fundamental building blocks of source programs Character constants One character surrounded by single quotes A or? Actually an int value represented

### C Programming Strings. Mrs. Hajah T. Sueno, MSIT instructor

C Programming Strings Mrs. Hajah T. Sueno, MSIT instructor String Basics 3 Characters Characters are small integers (0-255) Character constants are integers that represent corresponding characters. 0 48

### YOU MUST TURN IN EVERY PAGE OF THIS EXAM including the ref card page

CSE2421 MIDTERM Spring 2013 NAME SCORE / 100 FYI: There are no compiler errors in the code presented on this exam. If you think there is, please bring it to my attention. NOTE: If there is not an answer

### Introduction to C Programming S Y STEMS

Introduction to C Programming CS 40: INTRODUCTION TO U NIX A ND L I NUX O P E R AT ING S Y STEMS Objectives Introduce C programming, including what it is and what it contains, which includes: Command line

### Lecture 03 Bits, Bytes and Data Types

Lecture 03 Bits, Bytes and Data Types In this lecture Computer Languages Assembly Language The compiler Operating system Data and program instructions Bits, Bytes and Data Types ASCII table Data Types

### C Programming, Chapter 1: C vs. Java, Types, Reading and Writing

C Programming, Chapter 1: C vs. Java, Types, Reading and Writing T. Karvi August 2013 T. Karvi C Programming, Chapter 1: C vs. Java, Types, Reading and Writing August 2013 1 / 1 C and Java I Although the

### (a) Arrays. Definition

Part 3: Aggregate Data Types (a) Arrays Definition An array is a sequence of objects of a given type Therefore it is not a type of its own It is rather an organizational concept Array elements can be accessed

### 1 Problem Description

CSCE2014 Programming Foundations II Lab Two (week 9-9 to 9-13) By Wing Ning Li 1 Problem Description We have introduced and studied the concept of pointer variable and learned that the name of an array

### 6.087 Lecture 5 January 15, 2010

6.087 Lecture 5 January 15, 2010 Review Pointers and Memory Addresses Physical and Virtual Memory Addressing and Indirection Functions with Multiple Outputs Arrays and Pointer Arithmetic Strings String

### SANKALCHAND PATEL COLLEGE OF ENGINEERING, VISNAGAR ODD/EVEN ACADEMICSEMESTER (2014-15) ASSIGNMENT / QUESTION BANK (2110003) [F.Y.B.E.

SANKALCHAND PATEL COLLEGE OF ENGINEERING, VISNAGAR ODD/EVEN ACADEMICSEMESTER (2014-15) ASSIGNMENT / QUESTION BANK Subject: Computer Programming and Utilization (2110003) [F.Y.B.E.: ALL BRANCHES] Unit 1

### Example Solution to Exam in EDA150 C Programming

Example Solution to Exam in EDA150 C Programming Janurary 12, 2011, 14-19 Inga hjälpmedel! Examinator: Jonas Skeppstedt, tel 0767 888 124 30 out of 60p are needed to pass the exam. General Remarks A function

### CS 11 C track: lecture 3

CS 11 C track: lecture 3 n This week: n Arrays n one-dimensional n multidimensional n Command-line arguments n Assertions Arrays n What is an "array"? n A way to collect together data of a single type

### Memory management. Announcements. Safe user input. Function pointers. Uses of function pointers. Function pointer example

Announcements Memory management Assignment 2 posted, due Friday Do two of the three problems Assignment 1 graded see grades on CMS Lecture 7 CS 113 Spring 2008 2 Safe user input If you use scanf(), include

### Programming Language: Syntax. Introduction to C Language Overview, variables, Operators, Statements

Programming Language: Syntax Introduction to C Language Overview, variables, Operators, Statements Based on slides McGraw-Hill Additional material 2004/2005 Lewis/Martin Modified by Diana Palsetia Syntax

### Basic C Syntax. Comp-206 : Introduction to Software Systems Lecture 10. Alexandre Denault Computer Science McGill University Fall 2006

Basic C Syntax Comp-206 : Introduction to Software Systems Lecture 10 Alexandre Denault Computer Science McGill University Fall 2006 Next Week I'm away for the week. I'll still check my mails though. No

### String Processing in C

String Processing in C C Programming and Software Tools N.C. State Department of Computer Science Standard Library: Many functions for checking whether a character is a digit, is upper case,

### String Representation in C

String Representation in C 1 There is no special type for (character) strings in C; rather, char arrays are used. char Word[7] = "foobar"; Word[6] Word[5] Word[4] Word[3] Word[2] Word[1] Word[0] 'f' 'o'

### C programming. Intro to syntax & basic operations

C programming Intro to syntax & basic operations Example 1: simple calculation with I/O Program, line by line Line 1: preprocessor directive; used to incorporate code from existing library not actually

### MPI and C-Language Seminars 2010

MPI and C-Language Seminars 2010 Seminar Plan (1/3) Aim: Introduce the C Programming Language. Plan to cover: Basic C, and programming techniques needed for HPC coursework. C-bindings for the Message Passing

### Dept. of CSE, IIT KGP

Programming in C: Basics CS10001: Programming & Data Structures Pallab Dasgupta Professor, Dept. of Computer Sc. & Engg., Indian Institute of Technology Kharagpur Types of variable We must declare the

### Reading Assignment. Main Program in C. K.N. King Chapter 2. K.N. King Chapter 3. K.N. King Chapter 4. K.N. King Chapter 7. Our first C program

Reading Assignment Main Program in C In C the main program is a function called main The body of the function is enclosed in left ( ) and right ( ) curly braces. K.N. King Chapter 2 K.N. King Chapter 3

### Final Exam Review. CS 1428 Fall Jill Seaman. Final Exam

Final Exam Review CS 1428 Fall 2011 Jill Seaman 1 Final Exam Friday, December 9, 11:00am to 1:30pm Derr 241 (here) Closed book, closed notes, clean desk Comprehensive (covers entire course) 25% of your

### 1. Constants. 2. Variables. 3. Reserved words or key words. 4. Constants. Character set in C

Character set in C We should use only the following characters in writing a C program. These characters can be combined to create C words. Alphabet: A, B, C, D.. Z, a, b, c, d..z Numeric digits: 0, 1,

### Chapter 18 I/O in C. Copyright The McGraw-Hill Companies, Inc. Permission required for reproduction or display.

Chapter 18 I/O in C Standard C Library I/O commands are not included as part of the C language. Instead, they are part of the Standard C Library. A collection of functions and macros that must be implemented

### CIS 190: C/C++ Programming. Lecture 1 Introduction and Getting Started

CIS 190: C/C++ Programming Lecture 1 Introduction and Getting Started This course will teach you the basics of C and C++ give you more programming experience be appropriate for majors and non-majors not

### Stacks. Linear data structures

Stacks Linear data structures Collection of components that can be arranged as a straight line Data structure grows or shrinks as we add or remove objects ADTs provide an abstract layer for various operations

A Linked List Example http://gd.tuwien.ac.at/languages/c/programming-bbrown/c_094.htm /* linked list example */ #include #include #include #include #include

### Reading. C Programming Language. Basic syntax Whitespaces. Whitespaces (cont d) #include. Basic syntax Comments

Reading C Programming Language Types, operators, expressions Control flow, functions Basic IO K&R Chapter 2 Types, Operators, and Expressions K&R Chapter 3 Control Flow K&R Chapter 7 Basic I/O NEWS Assignment

### The Basics of C Programming. Marshall Brain

The Basics of C Programming Marshall Brain Last updated: October 30, 2013 Contents 1 C programming 1 What is C?................................. 2 The simplest C program, I........................ 2 Spacing

### z = x + y * z / 4 % 2-1

1.Which of the following statements should be used to obtain a remainder after dividing 3.14 by 2.1? A. rem = 3.14 % 2.1; B. rem = modf(3.14, 2.1); C. rem = fmod(3.14, 2.1); D. Remainder cannot be obtain

### 05 Case Study: C Programming Language

CS 2SC3 and SE 2S03 Fall 2009 05 Case Study: C Programming Language William M. Farmer Department of Computing and Software McMaster University 18 November 2009 The C Programming Language Developed by Dennis

### ASCII Encoding. The char Type. Manipulating Characters. Manipulating Characters

The char Type ASCII Encoding The C char type stores small integers. It is usually 8 bits. char variables guaranteed to be able to hold integers 0.. +127. char variables mostly used to store characters

### 5 Arrays and Pointers

5 Arrays and Pointers 5.1 One-dimensional arrays Arrays offer a convenient way to store and access blocks of data. Think of arrays as a sequential list that offers indexed access. For example, a list of

### Molecular Dynamics Simulations with Applications in Soft Matter Handout 7 Memory Diagram of a Struct

Dr. Martin O. Steinhauser University of Basel Graduate Lecture Spring Semester 2014 Molecular Dynamics Simulations with Applications in Soft Matter Handout 7 Memory Diagram of a Struct Friday, 7 th March

### VALLIAMMAI ENGINEERING COLLEGE SRM NAGAR, KATTANKULATHUR 603 203 DEPARTMENT OF COMPUTER APPLICATIONS QUESTION BANK IN REVISED BLOOM S TAXONOMY

ACADEMIC YEAR: 0 7 VALLIAMMAI ENGINEERING COLLEGE SRM NAGAR, KATTANKULATHUR 0 0 SEMESTER: ODD BRANCH: MCA YEAR: I SEMESTER: I SUBJECT CODE AND NAME: MC70 Problem Solving and Programming NAME OF THE FACULTY

### LESSON 7. ptr = &i; ptr = 0; ptr = NULL; /* equivalent to ptr == 0; */ ptr = (int *) 1999; /* an absolute address in memory */

LESSON 7 POINTERS AND CALL BY REFERENCE When an expression is passed as an argument to a function, a copy of the value of the expression is made, and it is this copy that is passed to the function. Suppose

### C Strings. Handout #06 January 23, CS106L Winter Introduction

CS106L Winter 2007-2008 Handout #06 January 23, 2008 C Strings Introduction C strings are very difficult to work with. Very difficult. In fact, they are so difficult to work with that C++ programmers invented

### 10CS35: Data Structures Using C

CS35: Data Structures Using C QUESTION BANK REVIEW OF STRUCTURES AND POINTERS, INTRODUCTION TO SPECIAL FEATURES OF C OBJECTIVE: Learn : Usage of structures, unions - a conventional tool for handling a

### Notes on C language. From: Prof Saroj Kaushik CSE dept, IIT Delhi

Notes on C language From: Prof Saroj Kaushik CSE dept, IIT Delhi Structure of C program #include /* Include files for input/output functions*/ #define const_name value /* constant declaration

### Going from Python to C

Going from Python to C Darin Brezeale December 8, 2011 Python is a high-level, interpreted language. C has many of the same types of programming constructs as in Python: arrays, loops, conditionals, functions,

### UNIT-1 PART-A UNIT-2 PART-A

UNIT-1 1. Define computer? 2. Discuss briefly about input and output devices? 3. What is a RAM? 4. What is arom? 5. What is a compiler? 6. Write about a linker? 7. List any 5 key wordsof c? 8. Illustrate

### Pointers. C and C++ Example. Manipulating pointers

Pointers C and C++ 3. Pointers Structures Alastair R. Beresford University of Cambridge Lent Term 28 Computer memory is often abstracted as a sequence of bytes, grouped into words Each byte has a unique

### 3) Some coders debug their programs by placing comment symbols on some codes instead of deleting it. How does this aid in debugging?

Freshers Club Important 100 C Interview Questions & Answers 1) How do you construct an increment statement or decrement statement in C? There are actually two ways you can do this. One is to use the increment

### C for Java Programmers

C for Java Programmers CS 414 / CS 415 Niranjan Nagarajan Department of Computer Science Cornell University niranjan@cs.cornell.edu Original Slides: Alin Dobra Why use C instead of Java Intermediate-level

### Pointers and dynamic memory management in C

Pointers and dynamic memory management in C Jakob Rieck Proseminar C - 2014 Contents 1 Introduction 2 2 Pointers 4 2.1 Declaration & Initialization................... 5 2.2 Using pointers..........................

### Data Structure with C

Subject: Data Structure with C Topic: Strings In this chapter we are emphasizing the reading and storing string and also manipulation concepts through the following millstones. The discussion starts with

### Outline. Compiling, interpreting, and running. The C Programming Language. Java vs. C. Administrative trivia Goals of the class Introduction to C

Outline ompiling, interpreting, and running Administrative trivia Goals of the class Introduction to 1 2 The Programming Language Java vs. Systems programming language Originally used to write Unix and

### INDEX. C programming Page 1 of 10. 5) Function. 1) Introduction to C Programming

INDEX 1) Introduction to C Programming a. What is C? b. Getting started with C 2) Data Types, Variables, Constants a. Constants, Variables and Keywords b. Types of Variables c. C Keyword d. Types of C

11 Operator Overloading; String and Array Objects The whole difference between construction and creation is exactly this: that a thing constructed can only be loved after it is constructed; but a thing

### MAFS 5240 C++ Basics Arrays & Pointers

MAFS 5240 C++ Basics Arrays & Pointers Arrays Pointers 1 Arrays holds a collection of objects of some type arrays are fixed size; new elements cannot be added individual objects are not named; each one

### C A short introduction

About these lectures C A short introduction Stefan Johansson Department of Computing Science Umeå University Objectives Give a short introduction to C and the C programming environment in Linux/Unix Go

### Arrays. Arrays, Argument Passing, Promotion, Demotion

Arrays Arrays, Argument Passing, Promotion, Demotion Review Introduction to C C History Compiling C Identifiers Variables Declaration, Definition, Initialization Variable Types Logical Operators Control

### INTI COLLEGE MALAYSIA

CSC112 (F) / Page 1 of 5 INTI COLLEGE MALAYSIA CERTIFICATE IN COMPUTING AND INFORMATION TECHNOLOGY PROGRAMME CSC 112 : FUNDAMENTALS OF PROGRAMMING FINAL EXAMINATION : DECEMBER 2002 SESSION This paper consists

### Programming in C. Characters and Strings

Programming in C Characters and Strings ASCII The American Standard Code for Information Interchange (ASCII) character set, has 128 characters designed to encode the Roman alphabet used in English and

### TOPICS IN C PROGRAMMING

TOPICS IN C PROGRAMMING By Bob Hain (ME Net) Introduction This document is not intended to be a text on C programming. Because many of you may not have had the opportunity to use or practice C programming,

### STRINGS. If you follow the rule of array initialization then you can write the above statement as follows:

STRINGS The string in C programming language is actually a one-dimensional array of characters which is terminated by a null character '\0'. Thus a null-terminated string contains the characters that comprise

### Pointers. March 19, 2012

Pointers March 19, 2012 Outline 1 Pointers 2 Pointer Arithmetic 3 Arrays and Pointers 4 Passing Pointers to Functions Pointers Pointers are variables, which contain the address of some other variables.

### Punctuation in C. Identifiers and Expressions. Identifiers. Variables. Keywords. Identifier Examples

Identifiers and Expressions CSE 130: Introduction to C Programming Spring 2005 Punctuation in C Statements are terminated with a ; Groups of statements are enclosed by curly braces: { and } Commas separate

### CS193D Handout 04 Winter 2005/2006 January 11, 2006 A Crash Course in C++

CS193D Handout 04 Winter 2005/2006 January 11, 2006 A Crash Course in C++ Most people taking CS193D will already have some experience with C++. This handout is a quick refresher in case it s been a while.

### COURSE CONTENTS. 3 -months 8:30 am - 3:30 pm Mon - Fri. [Admissions strictly through written test based on Basic C and Aptitude]

COURSE CONTENTS 3 -months 8:30 am - 3:30 pm Mon - Fri [Admissions strictly through written test based on Basic C and Aptitude] Subhash Programming Classes Revision: January, 2016 All rights reserved Call:

### ROUND 2 (2 ND YEAR) a) Yes b) No c) Depends on the compiler d) Depends on the standard

ROUND 2 (2 ND YEAR) 1) Find the output? 2. void 3. 4. int x = 1, z = 3; 5. int y = x

### C Programming 1. C Programming

C Programming 1 1 C Programming 1. Who developed the C language? Dennis M.Ritchie in 1972 2. What type of language is C? Semi-high level language 3. What is main()? The main() is a special function used

### CMSC 106 Lecture Set #2. C language syntax. Syntax vs Semantics Examples

CMSC 106 Lecture Set #2 C Language Introduction C language syntax Syntax rules of the grammar vocabulary recognized by the language ANSI standard American National Standards Institute Semantics the meaning

### CSC 270 Survey of Programming Languages. C-String Values

CSC 270 Survey of Programming Languages C Lecture 4 Strings C-String Values The most basic way to represent a string of characters in C is using an array of characters that ends with a null byte. Example

### 12 INPUT AND OUTPUT OF DATA

12 INPUT AND OUTPUT OF DATA 12.1 INTRODUCTION In C language input and output of data is done by a collection of library functions like getchar, putchar, scanf, printf, gets and puts. These functions permit

### Informatica e Sistemi in Tempo Reale

Informatica e Sistemi in Tempo Reale Introduction to C programming Giuseppe Lipari http://retis.sssup.it/~lipari Scuola Superiore Sant Anna Pisa October 25, 2010 G. Lipari (Scuola Superiore Sant Anna)

### The C Programming Language

The C Programming Language CS 1025 Computer Science Fundamentals I Stephen M. Watt University of Western Ontario The C Programming Language A high-level language for writing low-level programs Allows machine-independent

### 198:211 Computer Architecture

198:211 Computer Architecture Topics: Lecture 8 (W5) Fall 2012 Data representation 2.1 and 2.2 of the book Floating point 2.4 of the book 1 Computer Architecture What do computers do? Manipulate stored

### Basic Common Unix commands: Change to directory d

Basic Common Unix commands: cd d Change to directory d mkdir d rmdir d mv f1 [f2...] d mv d1 d2 ls [d] [f...] ls -1 [f...] vi [f] emacs [f] more f cp f1 f2 mv f1 f2 rm f gcc [-o f1] f2 gnuplot Create new

### CSCE 206: Structured Programming in C++

CSCE 206: Structured Programming in C++ 2016 Fall Exam 3 Friday, November 18, 2016 Total - 100 Points B Instructions: Total of 11 pages, including this cover and the last page. Before starting the exam,

### CSCE 206: Structured Programming in C++

CSCE 206: Structured Programming in C++ 2016 Fall Exam 3 Friday, November 18, 2016 Total - 100 Points A Instructions: Total of 11 pages, including this cover and the last page. Before starting the exam,

### Number Representation

Number Representation CS10001: Programming & Data Structures Pallab Dasgupta Professor, Dept. of Computer Sc. & Engg., Indian Institute of Technology Kharagpur Topics to be Discussed How are numeric data

### Sources: On the Web: Slides will be available on:

C programming Introduction The basics of algorithms Structure of a C code, compilation step Constant, variable type, variable scope Expression and operators: assignment, arithmetic operators, comparison,

### Useful Number Systems

Useful Number Systems Decimal Base = 10 Digit Set = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9} Binary Base = 2 Digit Set = {0, 1} Octal Base = 8 = 2 3 Digit Set = {0, 1, 2, 3, 4, 5, 6, 7} Hexadecimal Base = 16 = 2

### Strings. A special kind of array is an array of characters ending in the null character \0 called string arrays

Strings A special kind of array is an array of characters ending in the null character \0 called string arrays A string is declared as an array of characters char s[10] char p[30] When declaring a string

### The largest has a 0 in the sign position and 0's in all other positions:

10.2 Sign Magnitude Representation Sign Magnitude is straight-forward method for representing both positive and negative integers. It uses the most significant digit of the digit string to indicate the

### COMP2121: Microprocessors and Interfacing

Interfacing Lecture 3: Number Systems (I) http://www.cse.unsw.edu.au/~cs2121 Lecturer: Hui Wu Session 2, 2005 Overview Positional notation Decimal, hexadecimal and binary One complement Two s complement

### Common C Errors. Compiled by: Leela Kamalesh Yadlapalli

Common C Errors Compiled by: Leela Kamalesh Yadlapalli This document shows some of the common errors and warnings that you may encounter during this class. Always remember to use the Wall option if you

### CS201- Introduction to Programming Latest Solved Mcqs from Final term Papers July 11,2011

CS201- Introduction to Programming Latest Solved Mcqs from Final term Papers July 11,2011 Mc100401285 moaaz.pk@gmail.com Moaaz Siddiq Bc100400662 bc100400662asad@gmail.com Asad Ali Latest Mcqs FINALTERM

### Computer Science 281 Binary and Hexadecimal Review

Computer Science 281 Binary and Hexadecimal Review 1 The Binary Number System Computers store everything, both instructions and data, by using many, many transistors, each of which can be in one of two

### CSI 333 Lecture 2 Introduction to C: Part I 2 1 / 16

CSI 333 Lecture 2 Introduction to C: Part I 2 1 / 16 Basics of C Remark: Skim Chapters 1 through 6 of Deitel & Deitel. You will notice the following: C is (more or less) a subset of Java. (So, you are