Programação para Engenharia I

 

Tipos de Dados Funções Usuais Funções de Strings

Tipos Básicos de Dados

       São cinco tipos básicos de dados em C:

       caractere (char);
       inteiro (int);
       ponto flutuante (float);
       ponto flutante de precisão dupla (double);
       sem valor (void).


        TIPO             TAMANHO(bytes)                FAIXA

        char                  1                        -127 a 127
        int                   2                        -32767 a 32767
        float                 4                        Seis digitos de precisão
        double                8                        Dez digitos de precisão

	Obs.: Conforme o compilador estes tamanhos em bytes podem ser maiores. 

Funções Usuais

	Funções usuais da biblioteca <MATH.H>:
      abs(var)
Essa função tem por objetivo retornar o módulo do valor passado pelo parâmetro.

	   Ex.:
		#include <stdio.h>
                #include <math.h>

		void main()
		{
		    int x,y;
                    
                    x = -10;
		    y = abs(x);           // y recebe modulo de x

		    printf("%d", y);      //imprime 10
		}

      sqrt(var)
Essa função retorna a raiz quadrada do valor passado pelo parâmetro. É preciso
	ter cuidado pois a função vale para entrada de valores positivos e zero.
	   
	   Ex.:
	        #include <stdio.h>
                #include <math.h>

		void main()
		{
		    int x,y;
                    
                    x = 49;
		    y = sqrt(x);          // y recebe raiz quadrada de x

		    printf("%d", y);      //imprime 7
		}

      pow(var,exp)
Essa função retorna o resultado de uma operação, onde o primeiro parâmetro é o
	valor a ser elevado e o segundo parâmetro é o expoente em que o primeiro será elevado.

	   Ex.:
	        #include <stdio.h>
                #include <math.h>

		void main()
		{
		    int x,y,z;
                    
                    x = 7;
		    y = 2;		    
		    z = pow(x,y);         // z recebe (x)y          

		    printf("%d", z);      //imprime 49
		} 


Funções de Strings

       C possui muitas funções de manipulação de strings. Estas funções pertencem a 
       biblioteca <STRING.H>
       Aqui estão as mais comuns:
      strcpy(str1,str2)
Essa função copia str2 para str1. Usando essa função é preciso ter cuidado, pois 
       se str1 já tiver dados, após a chamada dessa função seus dados serão sobrepostos. 
       E se str2 for de tamanho maior que str1 também é possível perda de dados.
           
           Ex.:
		#include <stdio.h>
                #include <string.h>

		void main()
		{
		    char str1[30];

		    strcpy(str1,"Isso é um teste !");
		    printf("%s", str1);                //imprime "Isso é um teste !" 
		}

      strcat(str1,str2)
Essa função concatena str2 ao final de str1, ou seja, junta os dados de str2 no
       final de str1. É preciso cuidar para que os dados de str1 não ultrapassem o limite 
       de tamanho.

    	   Ex.:
		#include <stdio.h>
                #include <string.h>

		void main()
		{
		    char str1[30], str2[30];

		    gets(str1);            //leu "abc"
		    gets(str2);            //leu "fgh"
		    
                    strcat(str1,str2);
		    printf("%s", str1);     //imprime "abcfgh"       
                }

      strlen(str1)
Essa função retorna o tamanho de str1.
	   
	   Ex.:
		#include <stdio.h>
                #include <string.h>

		void main()
		{
		    char str1[30];
		    int tam;

		    gets(str1);           

		    tam=strlen(str1);     //tam recebe o tamanho de str1

		    printf("%d", tam);    //imprime o tamanho de str1
		}

      strcmp(str1,str2)
Essa função compara str1 com str2. Retorna zero se str1 = str2;
	menor que zero se str1 < str2; maior que zero se str1 > str2.

           Ex.:
		#include <stdio.h>
                #include <string.h>

		void main()
		{
		    int r;
		    char str1[30], str2[30];

		    gets(str1);
		    gets(str2);
		    
                    r=strcmp(str1,str2);           //r recebe o retorno da função

		    if(r==0) printf("Str1 é igual a Str2");
		    if(r>0) printf("Str1 é maior que Str2");
                    if(r<0) printf("Str1 é menor que Str2");      
                }

Desenvolvido por Leonardo Rosenbach