Differences between Java and C CS-2303, C-Term 20101 Differences between Java and C CS-2303, System Programming Concepts (Slides include materials from.

Slides:



Advertisements
Similar presentations
Dale Roberts Basic I/O – scanf() CSCI 230 Department of Computer and Information Science, School of Science, IUPUI Dale Roberts, Lecturer Department of.
Advertisements

Numerical Computation Review and Continuation CS-2301, B-Term Numerical Computation in C Review and Continuation CS-2301, System Programming for.
1 Chapter 9 - Formatted Input/Output Outline 9.1Introduction 9.2Streams 9.3Formatting Output with printf 9.4Printing Integers 9.5Printing Floating-Point.
Display a 12-Month Calendar CS-2301 D-term Programming Assignment #2 12-Month Calendar CS-2301 System Programming C-term 2009 (Slides include materials.
Basic C Programming Data Types and Arithmetic Operations 01/30/15.
More on Numerical Computation CS-2301 B-term More on Numerical Computation CS-2301, System Programming for Non-majors (Slides include materials from.
C. About the Crash Course Cover sufficient C for simple programs: variables and statements control functions arrays and strings pointers Slides and captured.
Chapter 9 Formatted Input/Output Acknowledgment The notes are adapted from those provided by Deitel & Associates, Inc. and Pearson Education Inc.
© Copyright 1992–2004 by Deitel & Associates, Inc. and Pearson Education Inc. All Rights Reserved. 1 Chapter 9 - Formatted Input/Output Outline 9.1Introduction.
Primitive Types Java supports two kinds of types of values – objects, and – values of primitive data types variables store – either references to objects.
 2000 Prentice Hall, Inc. All rights reserved. Chapter 9 - Formatted Input/Output Outline 9.1Introduction 9.2Streams 9.3Formatting Output with printf.
More about Numerical Computation CS-2301, B-Term More about Numerical Computation CS-2301, System Programming for Non-Majors (Slides include materials.
Assignment #2, 12- month Calendar CS-2301, B-Term Programming Assignment #2 12-Month Calendar CS-2301, System Programming for Non-Majors (Slides.
Conditionals, Loops, and Other Statements CS-2301, B-Term Conditionals, Loops, and Other Kinds of Statements CS-2301, System Programming for Non-Majors.
The printf Method The printf method is another way to format output. It is based on the printf function of the C language. System.out.printf(,,,..., );
Input/Output  Input/Output operations are performed using input/output functions  Common input/output functions are provided as part of C’s standard.
© Copyright 1992–2004 by Deitel & Associates, Inc. and Pearson Education Inc. All Rights Reserved Streams Streams –Sequences of characters organized.
© Copyright 1992–2004 by Deitel & Associates, Inc. and Pearson Education Inc. All Rights Reserved. 1 Chapter 9 - Formatted Input/Output Outline 9.1Introduction.
Chapter 9 Formatted Input/Output. Objectives In this chapter, you will learn: –To understand input and output streams. –To be able to use all print formatting.
Chapter 9 Formatted Input/Output Associate Prof. Yuh-Shyan Chen Dept. of Computer Science and Information Engineering National Chung-Cheng University.
C Tokens Identifiers Keywords Constants Operators Special symbols.
Introduction to C Programming Chapter 2 : Data Input, Processing and Output.
Course Title: Object Oriented Programming with C++ instructor ADEEL ANJUM Chapter No: 03 Conditional statement 1 BY ADEEL ANJUM (MSc-cs, CCNA,WEB DEVELOPER)
Chapter 3: Formatted Input/Output Copyright © 2008 W. W. Norton & Company. All rights reserved. 1 Chapter 3 Formatted Input/Output.
3. FORMATTED INPUT/OUTPUT. The printf Function The first argument in a call of printf is a string, which may contain both ordinary characters and conversion.
Bit Fields & Bitwise Operations CS-2303, C-Term Bit Fields & Bitwise Operations CS-2303 System Programming Concepts (Slides include materials from.
Chapter 2 Variables.
Chapter-4 Managing input and Output operation.  Reading, processing and writing of data are three essential functions of a computer program.  Most programs.
COMP Primitive and Class Types Yi Hong May 14, 2015.
School of Computer Science & Information Technology G6DICP - Lecture 4 Variables, data types & decision making.
Chapter 7 C supports two fundamentally different kinds of numeric types: (a) integer types - whole numbers (1) signed (2) unsigned (b) floating types –
Digital Computer Concept and Practice Copyright ©2012 by Jaejin Lee C Language Part 1.
Module B - Computation1/61 Module-B-Computation Variables Basic Memory Operations Expressions.
Gator Engineering Copyright © 2008 W. W. Norton & Company. All rights reserved. 1 Chapter 3 Formatted Input/Output.
Tokens in C  Keywords  These are reserved words of the C language. For example int, float, if, else, for, while etc.  Identifiers  An Identifier is.
CS 1704 Introduction to Data Structures and Software Engineering.
Department of Electronic & Electrical Engineering Lecture 3 IO reading and writing variables scanf printf format strings "%d %c %f" Expressions operators.
Announcements Assignment 2 Out Today Quiz today - so I need to shut up at 4:25 1.
Chapter 3: Formatted Input/Output 1 Chapter 3 Formatted Input/Output.
OPERATORS IN C CHAPTER 3. Expressions can be built up from literals, variables and operators. The operators define how the variables and literals in the.
Chapter 9 - Formatted Input/Output
Numbers in ‘C’ Two general categories: Integers Floats
C Formatted Input/Output
Formatted Input and Output
ECE Application Programming
Week 3 - Friday CS222.
Tokens in C Keywords Identifiers Constants
Input/output.
TMF1414 Introduction to Programming
Introduction to C CSE 2031 Fall /3/ :33 AM.
BY GAWARE S.R. COMPUTER SCI. DEPARTMENT
CSCI206 - Computer Organization & Programming
CS1101 Computational Engineering
Input and Output Lecture 4.
Input/Output Input/Output operations are performed using input/output functions Common input/output functions are provided as part of C’s standard input/output.
Variables In programming, we often need to have places to store data. These receptacles are called variables. They are called that because they can change.
Introduction to Programming
Character Set The character set of C represents alphabet, digit or any symbol used to represent information. Types Character Set Uppercase Alphabets A,
More about Numerical Computation
Chapter 9 - Formatted Input/Output
Lectures on Numerical Methods
Programming Assignment #1 12-Month Calendar—
Differences between Java and C
WEEK-2.
Introduction to C EECS May 2019.
Module 2 Variables, Data Types and Arithmetic
DATA TYPES There are four basic data types associated with variables:
Introduction to C Programming
Introduction to C CSE 2031 Fall /15/2019 8:26 AM.
ECE 120 Midterm 1 HKN Review Session.
Presentation transcript:

Differences between Java and C CS-2303, C-Term Differences between Java and C CS-2303, System Programming Concepts (Slides include materials from The C Programming Language, 2 nd edition, by Kernighan and Ritchie and from C: How to Program, 5 th and 6 th editions, by Deitel and Deitel)

Differences between Java and C CS-2303, C-Term Java and C Java is derived from C Many of its syntactic characteristics are similar to C However, there are some huge differences

Differences between Java and C CS-2303, C-Term Expressions Arithmetic operators are the same:– +, –, *, /, %, ++, –– Numerical type conversion is mostly the same –Java spells out divide by zero, NaN (not a number, etc.) –C & C++ are machine dependent Check the textbooks for details

Differences between Java and C CS-2303, C-Term Relational Operators Relational operators work the same way but return different results:– >, >=, <, <=, ==, != In Java, they return values FALSE and TRUE In C/C++, they return values 0 and 1 In C/C++, –a value of zero means false –any value that is not zero means true –E.g., 1, 5, , , × Very important!

Differences between Java and C CS-2303, C-Term Conditional and Bitwise Operators Conditional execution operators are same in Java and C/C++:– ||, &&, ? followed by : Bitwise operators are same in Java and C/C++:– |, &, ^ for bit-by-bit operations with a word Shift operators differ a little bit << (left shift) is the same >> (right shift) is machine dependent in C/C++ I.e., whether to fill from left with zeros or sign bits

Differences between Java and C CS-2303, C-Term Assignment and Unary Operators Assignment operators work the same:– =, +=, -=, *=, /=, &=, |=, ^= The following unary operators are available C/C++ but not in Java ~ invert the bits of a word * pointer dereference & pointer creation (type) cast (i.e., forceable type conversion) sizeof # of bytes in operand or data type -> pointer dereference with field selection

Differences between Java and C CS-2303, C-Term Summary about Expressions and Operators Pretty much the same in C/C++ and Java Be sure to check details in textbook Be sure to check operator precedence Table 2-1 in K&R Distributed throughout text in D&D

Differences between Java and C CS-2303, C-Term Statements Statements in C/C++:– Labeled statement Expression statement Compound statement Selection statement Iteration statement Jump statement

Differences between Java and C CS-2303, C-Term Statements Statements in C/C++:– Labeled statement Expression statement Compound statement Selection statement Iteration statement Jump statement E.g., cases of a switch statement Similar to Java

Differences between Java and C CS-2303, C-Term Statements Statements in C/C++:– Labeled statement Expression statement Compound statement Selection statement Iteration statement Jump statement Any expression followed by ';' Much like to Java

Differences between Java and C CS-2303, C-Term Statements Statements in C/C++:– Labeled statement Expression statement Compound statement Selection statement Iteration statement Jump statement Sequence of statements enclosed in "{}" Called a “block” in Java

Differences between Java and C CS-2303, C-Term Statements Statements in C/C++:– Labeled statement Expression statement Compound statement Selection statement Iteration statement Jump statement switch (expr) if (expr)statement if (expr) statement else statement Same as in Java

Differences between Java and C CS-2303, C-Term Statements Statements in C/C++:– Labeled statement Expression statement Compound statement Selection statement Iteration statement Jump statement while (expr) statement do statement while (expr); for (exp1; exp2, exp3) statement Very similar to Java

Differences between Java and C CS-2303, C-Term Statements Statements in C/C++:– Labeled statement Expression statement Compound statement Selection statement Iteration statement Jump statement break; continue; return expr Very similar to Java goto Not present in Java Not allowed in this course

Differences between Java and C CS-2303, C-Term Summary about Statements Pretty much the same in C/C++ and Java Be sure to check details in textbooks

Differences between Java and C CS-2303, C-Term Formatted Input & Output Very different between C and Java Very different between C and C++ Handled by library functions in C printf() scanf() getc() putc() Many others!

Differences between Java and C CS-2303, C-Term printf() – Print formatted data printf("string containing '%' specifiers", expr 1, expr 2, expr 3, …); Copy the string, character-by-character, to the output. When the ith '%' is encountered, treat it as a conversion specifier for converting the value of expr i Copy the converted value to the output per instructions encoded in the conversion specifier Return number of characters printed

Differences between Java and C CS-2303, C-Term printf() conversion specifiers See K&R, p 154 & 244 or D&D Chapter 9 %d or %i Treat expression as a decimal number (with sign) %u Treat expression as unsigned decimal number %f Treat expression as double precision floating point number; print without exponent %e or %E Treat expression as double precision floating point number; print with exponent (base 10) — scientific notation %c Treat value of expression as the code for a single character %s Treat expression as a pointer to a string … Later in this course

Differences between Java and C CS-2303, C-Term printf() conversion specifiers (continued) Conversion specifiers may optionally contain Right or left alignment in the field Minimum field width (padded on right or left) Precision – i.e., –Maximum length of string –Number of decimal places of floating point value Examples %6d – print signed decimal number in 6-char field %8.4f – print floating point number with four places after decimal point, field width of 8 characters

Differences between Java and C CS-2303, C-Term scanf() – Scan formatted data scanf("string containing '%' specifiers", &var 1, &var 2, &var 3, …); Scan the input, matching the string character by character. When the ith '%' is encountered, treat as a conversion specifier for converting next sequence of characters and storing result in var i Copy the converted value to the output per instructions encoded in the conversion specifier Stop if input does not match string or conversion not successful Return number of successful conversions.

Differences between Java and C CS-2303, C-Term scanf() – Typical Usage int j; double x; scanf("%d%f", &j, &x); Scan the input, skipping blanks and tabs Try to match a signed integer; if successful, store result in j Continue scanning, skipping blanks and tabs Try to match a floating point number. If successful, store in x Return number of items stored.

Differences between Java and C CS-2303, C-Term scanf() Details K&R Table B-2 (p. 246), D&D Chapter 9 printf() and scanf() are both needed for Lab #1 Programming Assignment #1

Differences between Java and C CS-2303, C-Term Summary Differences and similarities between Java and C Expressions Statements There are lots of other differences Will be covered during the course

Differences between Java and C CS-2303, C-Term Questions?