180 likes | 280 Views
CSE1320-002-Fall 2014 Loop. Dr. Sajib Datta CSE@UTA Sep 8, 2014. char data type. char type technically is an integer type Computer uses numeric codes to represent characters, and store characters as integers The mostly commonly used code in the U.S. is the ASCII code. char data type.
E N D
CSE1320-002-Fall 2014Loop Dr. SajibDatta CSE@UTA Sep 8, 2014
char data type • char type technically is an integer type • Computer uses numeric codes to represent characters, and store characters as integers • The mostly commonly used code in the U.S. is the ASCII code
char data type • A char variable takes 8-bit unit of memory (1 byte), which can be verified by sizeof() • C character constant: a single letter contained between single quotes • Example: • char mych = 'a'; • printf("%d", sizeof(char));
Compare char values • char ch; • scanf(“%c”, &ch); • printf(“%c”, ch); // will print the character • printf(“%d”, ch); //will print?
Input/output Char • char letter1 = 'A'; • char letter2 = 65; • printf("print the ASCII for 'A' - %d", letter1);// 65 will be printed • printf("print the char value for ‘A' - %c", letter2); // A will be printed • scanf("%c", &letter);// must read a character, even the input is a digit, it will be regarded as a character • scanf("%d", &letter);// fail – type must match • Not good programming to mix integer and char value, because it needs remembering ASCII for characters.
Non-printing characters • Characters which can not be printed directly • Rather, some represent some actions such as backspacing or going to the next line or making the terminal bell ring.
while loop • The basic form of the while loop is • while(test_condition) • do_something; • As long as test is true, the loop will repeat. • test_condition should be an expression. If it is nonzero, it’s a true condition, and do something. If it is zero, the while statement will be skipped. • Give the test_conditiona chance to change in do_something, otherise, the loop will run for ever • In general, (1) define a variable outside while loop and (2) use it to compose the test_condition, and then (3) change the variable in do_something
Example • Input: 17 • Output: 0 2 4 6 8 10 12 14 16 • #include <stdio.h> • int main(void) • { • intupbound; • inti = 0; • scanf("%d",&upbound); • while(i <= upbound) • { • if (i % 2 == 0) • printf("%d ", i); • i++; • } • printf("\n"); • return 0; • }
Example • Print out a triangle. • * • ** • *** • ****
for basics • Gathering three actions (initializing, testing, and updating) into one place • The basic format: • for (expression1; expression2; expression) • do_something
for basics • Notes: • The parentheses following the keyword for contain three expressions separated by two semicolons. • Expression1 is initialization. It’s done just once, when the for loop starts. • Expression2 is the test condition, and will be evaluated before each potential execution of a loop. When it’s false, the loop will be terminated. • Expression3, the change or update, is evaluated at the end of each loop.
Output: The index of the loop is 1. The index of the loop is 2. The index of the loop is 3. The index of the loop is 4. Press any key to continue . . . • #include<stdio.h> • int main(void) • { • int number = 4; • int count; • for (count = 1; count <= number; count++) • printf("The index of the loop is %d.\n", count); • return 0; • }
Example print out n square • #include<stdio.h> • int main(void) • { • int num; • printf(" n n square\n"); • for (num = 1; num <= 4; num++) • printf(" %d %d\n", num, num*num); • return 0; • } Output: n n square 1 1 2 4 3 9 4 16 Press any key to continue . . .
Example print out decreasing integers • #include<stdio.h> • int main(void) • { • int num, start; • scanf("%d", &start); • printf("Print the five integers, starting from the input with a decrement of 3.\n"); • for (num = 0; num <= 4; num++) • printf("%d\n", start-num*3); • return 0; • }
Print out a triangle- with for loop • * • ** • *** • ****