Académique Documents
Professionnel Documents
Culture Documents
Linguagem C
O C nasceu na dcada de 70. Seu inventor, Dennis Ritchie, implementou-o pela primeira vez usando um DEC PDP-11 rodando o sistema operacional UNIX. O C derivado de uma outra linguagem: o B, criado por Ken Thompson. O B, por sua vez, veio da linguagem BCPL, inventada por Martin Richards.
09/02/2013
Linguagem C
O C uma linguagem de programao genrica que utilizada para a criao de programas diversos como processadores de texto, planilhas eletrnicas, sistemas operacionais, programas de comunicao, programas para a automao industrial, gerenciadores de bancos de dados, programas de projeto assistido por computador, programas para a soluo de problemas da Engenharia, Fsica, Qumica e outras Cincias, etc ...
C, C++ e C#
C muito importante para o desenvolvimento em Windows, o prprio Windows feito em 70% linguagem C, o restante em linguagem Assembly. C++ foi desenvolvido em 1983 por Bjarne Stroustrup (originalmente com o nome C with Classes). C++ como se fosse C, mas com vrias bibliotecas e com suporte de orientao a objetos. C# (CSharp) uma linguagem de programao orientada a objetos criada pela Microsoft, faz parte da sua plataforma .Net. A companhia baseou C# na linguagem C++ e Java. C# a segunda linguagem mais utilizada no mundo, que liderado pela linguagem JAVA.
09/02/2013
Linguagem C
O C exige, alm do domnio da linguagem em si, uma familiaridade com o compilador e experincia em achar "bugs" nos programas. importante ento que o leitor digite, compile e execute os exemplos apresentados.
Caractersticas
Um ponto de suma importncia: o C "Case Sensitive", isto , maisculas e minsculas fazem diferena. Se declarar uma varivel com o nome soma ela ser diferente de Soma, SOMA, SoMa ou sOmA. Da mesma maneira, os comandos do C if e for, por exemplo, s podem ser escritos em minsculas pois seno o compilador no ir interpret-los como sendo comandos, mas sim como variveis.
09/02/2013
Comparando Pascal e C
Estrutura Bsica de um Programa
Pascal C /* comentario */ #include ... int main( ) { ...seu cdigo... return (0); } C (outra opo) /* comentario */ #include ... void main( ) { ...seu cdigo... }
Uso de Bibliotecas
Pascal uses CRT; Chamada biblioteca padro C #include < stdio.h >
interface ....;
#include "agua.i"
09/02/2013
Operadores de Comparao
Pascal Funo termo esquerda igual ao termo direita termo esquerda diferente do termo direita menor, maior menor ou igual maior ou igual C
= <>
== !=
Delimitadores
Pascal (* *) ou { } ; Funo delimitadores de comentrio separar comandos e terminar declaraes separar identificadores e parmetros atribuio de valor delimita blocos de instrues delimita teste de condio C /* */ ;
, = { ... } ( ... )
09/02/2013
Declaraes
Pascal var const Funo declarao de variveis declarao de constantes declarao de estructuras ou tipos defino de estructuras ou tipos C no h necessidade const
type
struct
typedef
enum
C char int
longint
long
09/02/2013
Tipos Numricos
Pascal Nmeros de Ponto Flutuante 2,9*10(-39) a 1,7*10(38) (6 dgitos significativos) (pascal) 3,4*10(-38) a 3,4*10(38) (6 dgitos significativos) (c) 5*10(-324) a 1,7*10(324) (1516 dgitos significativos) (pascal) 1,7*10(-308) a 1,7*10(308) (1015 dgitos significativos) (c) 3,4*10(-4932) a 1,1*10(4932) (19-20 dgitos significativos) (pascal) 1,7*10(-308) a 1,7*10(308) (18 dgitos significativos) (c) C
real
float
double
double
extended
long double
Dados Alfanumricos
Pascal
Funo
char
um caracter
char
string
corrente de caracteres
char
09/02/2013
"%c"character "%s"string no h declarao de formato "%i"ou "%d" inteiro de variveis "%ld" long "%f" float "%lf"double
clrscr;
clrscr ( ); system("cls");
getch ( ); { instrues; }
09/02/2013
Condicional
Pascal if C
testa uma condio, se verdadeira executa o comando subordinado then, caso contrrio, executa o comando else
Lao de repetio
Pascal for executa um comando repetidamente, indicando um aumento na varivel de controle C
Pascal
09/02/2013
Lao
Pascal do C repeat (bloco) until ( ); repete uma srie de comandos at a condio tornar-se falsa, ( diferente do comando anterior pois executa pelo menos uma vez) do {bloco} while ( );
Pascal
goto
goto
Case
Pascal switch C switch (escolha) { case opo: {bloco1;} selecionar uma de vrias break; aes, case opo: {bloco2;} dependendo do resultado break; de um teste case opo: {bloco3;} break; default: msg_erro( ); }
case (escolha) of opo: (bloco1); opo: (bloco2); opo: (bloco3); else opo_invlida; end;
10
09/02/2013
Operadores aritmticos
Pascal + * div / mod Funo adio subtrao multiplicao diviso inteira diviso real resto da diviso expresso como inteiro (mdulo) C + * / / %
Precedncias de operadores
Pascal () negao multiplicao diviso mdulo adio subtrao igual diferente maior (igual) menor (igual) Precedncias 1 2 3 C () negao multiplicao diviso mdulo adio subtrao igual diferente maior (igual) menor (igual)
11
09/02/2013
Operadores Lgicos
Pascal
1 = verdadeiro 0 = falso
Junes
Pascal (()E()) ( (1) e (1) ) da (1) ( (1) e (0) ) da (0) ( (0) e (1) ) da (0) ( (0) e (0) ) da (0) caso as expresses sejam verdadeiras retorna 1 caso a expresso esquerda seja falsa (0) no avalia a segunda parte e retorna 0. C
( ( ) and ( ) )
( ( ) && ( ) )
12
09/02/2013
Junes
Pascal ( ( ) OU ( ) ) ( (1) ou (1) ) da (1) ( (1) ou (0) ) da (1) ( (0) ou (1) ) da (1) ( (0) ou (0) ) da (0) caso uma das expresses seja verdadeira retorna 1 se a expresso esquerda for verdadeira retorna 1 ele no avalia a segunda parte, caso contrrio retorna 0. C
( ( ) or ( ) )
( ( ) || ( ) )
Apontadores
Pascal Funo C
^nome
dado
*nome
^nome
&nome
13
09/02/2013
stdio.h
conio.h
ctype.h
stdlib.h
strtod( ), strtol( ), abort( ), execl( ), exit( ), system( ), cls( ), max(x,y), min(x,y), qsort( ), ran( ), random( ), srand( ), ...
14
09/02/2013
math.h
string.h
dos.h
graphics.h
15
09/02/2013
Exemplo
Pascal program exemplo; #include <stdio.h> /* Um Primeiro Programa */ uses crt; int main () { begin printf ("Ola! Eu estou { Um Primeiro Programa} programando em C!\n"); writeln(Ol! Eu estou return(0); programando em Pascal!'); } end. C
Praticando
O que faz o seguinte programa descrito em C? #include <stdio.h> int main() { int x; scanf("%d",&x); printf("%d",x); return(0); }
16
09/02/2013
Praticando
Converta em linguagem C os programas descritos em Pascal. Program pratica; Begin write(Convertendo em linguagem C); End.
Program pratica2; Uses crt; Var x:integer; Begin clrscr; write(Digite um valor inteiro); read(x); write(O quadrado do valor digitado ,x*x); readkey; end.
17