Lista de Perguntas II AV CA SC 08.1

Eliselma Vieira dos Santos

1) O que significa typedef? Dê exemplos.
Resposta:
typedef serve para você mudar o nome de um tipo. Parece meio inútil mas na verdade ajuda muito com a semântica do código.

EX:

Typedef unsigned int uint;

Typedef char letra;

Typedef float nota;

Int main (int argc, char* *argv){

Uint idade;

Nota p1;

Letra turma;

Printf(“didite sua idade:\n”);

Scanf(“%u”,&q idade);

Printf(“digite sua turma:\n”);

Scanf(“%c”,& turma);

Printf(“digite sua nota p1:\n”);

Scanf(“%f”,& p1);

}

  1. Quais os caracteres que sao validos apenas para strings?

Resposta: @,$,’ ‘,á,é,õ,ç.
3) O que esse programa calcula?
#include <math.h>
void main( ){
float area,raio=5.0;
area=m.pl*raio*raio;
}
Resposta: Área de um disco circular.
4) Qual significado da palavra recursividade?
Resposta: É o processo pelo qual uma função chama a si mesma repeditidamente em número finita de vezes.
5) Quando queremos modificar o tipo de dado representado por uma variável isto é,queremos que o dado seja representado em um dado diferente do qual a variável foi inicialmente declarada : qual tipo de variável utilizamos?
DÊ um exemplo:
Resposta:Esse procedimento é chamado de conversão de tipo ou casting(moldagem ,em inglês).
EX:
Int num;
Float valor =3.0;
Num=(int) valor%2;
6) Qual significado da palavra protótipo?
Respostas: É uma instrução que define o nome da função seu tipo de retorno e a quantidade e o tipo de argumentos da função.
7)No programa seguinte indentifique quais são as variáveis globais?
float,a,b,med;
void média 2(void){
med=(a+b)/2.0;
}
void main{
printf("digite dois números:\n");
scanf("%f%f,&a,%b);
media2( );
printf(" \n A media destes números eh %f,med);

8) O que são indentificadores?
Resposta:São os nomes das variáveis e funções usadas nos programas.

9) Cite três caracteristcas da linguagem C: faça um programa?
- o c é uma linguagem de alto nível.
- programas em c são compilados ,gerando programas executáveis.
- o c é uma linguagem estruturalmente simples e grande portabilidade.

Juvane Nunes Marciano

1) Explique quais as vantagens da modularização?
Resposta: Há várias vantagens na modularização do algoritmo, pois ele torna-se de mais fácil compreensão; sua flexibilidade é aumentada; é eliminada grande parte da redundância de códigos; há grande diminuição na ocorrência de erros, que quando ocorrem em um algoritmo modularizado, têm a possibilidade de sua identificação ser mais rápida e prática, pois ao invés de sair consertando todo o código, apenas modifica-se uma vez na função correspondente. E tudo isso o torna de muito mais fácil manutenção, é como se diz: "dividir para conquistar!".
2) Faça um algoritmos que some ou subtraia, a escolha do usuário, 2 números por ele fornecidos. Utilize funções para imprimir o menu, para a soma, para subtração, e utilize apenas variáveis globais.

#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
int a,b,r,op;
void menu();
int sum(int a,int b);
int sub(int a,int b);
int main(){
    menu();
 
    switch (op){
           case 1:
                sum(a,b);
                printf("\n\n%i\n",r);
                break;
           case 2:
                sub(a,b);
                printf("\n\n%i\n",r);
                break;
           default:
                   printf("\n\nOpção Inválida\n");
                   break;
    }
    getch();
}
void menu(){
     printf("\n\nType:\n1 - Sum\n2 - Subtraction\n");
     scanf("%i",&op);
}
int sum(int a,int b){
    printf("\n\nType two numbers\n\n");
    scanf("%i%i",&a,&b);
    r=a+b;
    return r;
}
int sub(int a,int b){
    printf("\n\nType two numbers\n\n");
    scanf("%i%i",&a,&b);
    r=a-b;
    return r;
}

3) Faça um algoritmo que leia uma matriz 3x3, crie uma função para imprimi-la e outra para somar os elementos que estão abaixo da diagonal principal.
#include<stdio.h>
#include<conio.h>
int soma=0;
int x[3][3],i,j;
void print ();
int main (){
 
    printf("Digite os valores da matriz, presionando a tecla ENTER após cada valor\n");
    for (i=0;i<3;i++){
       for (j=0;j<3;j++){
           scanf("%i",&x[i][j]);
       }
    }
    print();
    for (i=0;i<3;i++){
       for (j=0;j<3;j++){
           if(i>j){
              soma=soma+x[i][j];
           }
       }
    }
    printf("A soma dos elementos abaixo da diagonal principal é %i",soma);
    getch();
}
void print(){
    printf("\n\n\n");
    for (i=0;i<3;i++){
       for (j=0;j<3;j++){
           printf("%i",x[i][j]);
       }
       printf("\n");
    }
    printf("\n\n\n");
}

4) Elabore um algoritmo que receba um número e verifique se ele é primo, utilizando para isso uma função.
#include<stdio.h>
#include<stdlib.h>
int prime(int x);
int main(){
    int x; 
    printf("Type a number\n\n");
    scanf("%i",&x);
    if (!prime(x))
       printf("\nNot prime!\n");
    else
        printf("\nPrime!\n");
    system("pause");    
}
int prime(int x){
    int i,c=0;
    for (i=1;i<=x;i++){
        if (x%i==0) {
           c++;
        }  
    }
    if (c==2){
       return 1;
    }
    else{
        return 0;
    }
}

5) Elabore um algoritmo que desenhe um ponto na tela cada vez que for pressionado o número 5, e faça isso até receber o finalizador '1'. Deverá haver uma função que imprima o ponto.
#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
void point();
int main (){
    int k;
    scanf("%i",&k);
    system("cls");
    while (k!=1){
          if (k==5)
             point();
          scanf("%i",&k);
          system("cls");
    }
}
void point(){
     printf(".\n");
}

6) Escreva um algoritmo que armazene o nome e a idade de uma pessoa, em uma struct, e mostre uma frase utilizando essas duas variáveis. A frase deve ser escrita por uma função.
#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
 
typedef struct pessoa{
        char name[200];
        char age[5];
        }pessoa;
pessoa p;
void phra();
int main(){
 
    printf("Type our name and age\n\n");
    gets(p.name);
    gets(p.age);
    phra();
    getch();
}
void phra(){
     printf("\n\nThe user is called %s,\n%s years old!!!\n\n",p.name,p.age);
}

7) Elabore um algoritmo que resolva um problema do seu dia-a-dia, utilizando uma função do tipo void e uma do tipo int, no mínimo.
#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
float a,b,c,r;
float media(float a,float b, float c);
void show();
int main(){
    printf("Digite as 3 notas\n\n");
    scanf("%f%f%f",&a,&b,&c);
    media(a,b,c);
    show();
    getch();
}
float media(float a,float b, float c){
    r = (a*4 + b*5 + c*6) / 15;
    return r;
}
void show(){
     printf("\n\n\nA média foi: %f\n\n",r);
}

8) Faça um algoritmo que receba o preço de um produto e a porcentagem do desconto, e, com uma função, calcule o preço final.
#include<stdio.h>
#include<conio.h>
float preco,bruto,desco;
float final(float bruto,float desco);
int main(){
    printf("Digite o preço e a porcentagem do desconto\n\n");
    scanf("%f%f",&bruto,&desco);
    preco=bruto;
    desco=desco/100;
    final(bruto,desco);
    printf("\n\nR$ %0.0f\n",preco);
    getch();
}
float final(float bruto,float desco){
    preco = preco - bruto * desco;
    return preco;
}

9) Escreva um algoritmo que leia o sexo e a altura da pessoa, armazene-os em uma struct, e calcule qual seu peso ideal, utilizando as seguintes fórmulas, para homens: (72.7*altura) - 58 e para mulheres: (62.1*altura) - 44.7.
#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
 
typedef struct pessoa{
        char sexo[1];
        float altura;
        }pessoa;
int main(){
    pessoa p;
    float peso;
    printf("\nDigite sua altura e sexo (F ou M)\n");
    scanf("%f",&p.altura);
    scanf("%s",&p.sexo[0]);
    if (p.sexo[0]=='M')
       peso = (72.7*p.altura) - 58;
    else
        peso = (62.1*p.altura) - 44.7;
    printf("\n\n\nSeu peso ideal é: %f\n");
    getch();
}

10) Elabore um algoritmo que receba números até receber um múltiplo de 5. Informe quantos números foram lidos. Para verificar se o número é múltiplo de 5, utilize uma função.
#include<stdio.h>
#include<conio.h>
 
// Não consegui fazer com função,
// tava sempre dando true!!!
// ¬¬ Ninguém merece!
int x,c=0;
int main(){
    do{
          printf("\nType a number\n\n");
          scanf("%i",&x);
          c++;
          if (x%5==0&&x!=0)
             break;             
    }while (1);
    printf("\n\n%i numbers loaded!!!\n\n",c);
    getch();
}

Neuma Maria Medeiros Florêncio

1) Explique a diferença entre variáveis globais para variáveis locais.Dê exemplos.
As variáveis globais são declarada antes de qualquer função e são visíveis em todo programa e a variáveis locais é declarada dentro de uma função e só pode ser usada dentro dela.
Exemplo: #include <stdio.h>
Int x;
Int multiplicar(inty,intz){
Int t;
t=y*z
Return t;
}
Int main(){
Int b=1,int a=3, int x;
x=multiplicar(b,a);
}
X é uma variável global e y,z,t,b e a é variável local.

2) Escreva um algoritmo que pergunte qual o esportes preferido do usuário. O programa deve imprimir uma lista de 5 opções e no final imprima a porcentagem da votação. O programa deve ficar em um laço, para que uma segunda pessoa possa dar o seu voto.

#include <stdio.h>
/*
Autores: Aquiles & Turma Santa Cruz 2 Periodo
Data da Ultima modificação:22/08/2008
Distribuição: GPL
Descrição do programa:
 
*/
 
float porcentagem(int votosDoEsporte, int total) {
    float resultado = (votosDoEsporte*100)/total;
    return resultado;
}
 
int main() {
    int total = 0;
    int esportes[6];
    int i;
    for(i =0;i<6;i++) {
        esportes[i] = 0;
    }
    int opcao;
    while(1) {
      system("clear");
      printf("Qual o seu esporte preferido?\n");
      printf("1- Futebol\n");
      printf("2- Voley\n");
      printf("3- Capoeira\n");
      printf("4- Natação\n");
      printf("5- Vaquejada\n");
      printf("6- Outros\n");
      scanf("%i",&opcao);
      switch(opcao) {
        case 1:
          esportes[0]++;
          total++;
          break;
        case 2:
          esportes[1]++; 
      total++;
          break;
        case 3:
          esportes[2]++;
      total++;
          break;
        case 4:
          esportes[3]++;
          total++;
          break;
        case 5:
          esportes[4]++;
          total++;
          break;
        case 6:
          esportes[5]++; 
          total++;
          break;
        default:
          printf("Esporte inválido!\n");
          break;        
      }
 
      printf("Futebol %0.0f%\n",porcentagem(esportes[0],total));
      printf("Voley %0.0f%\n",porcentagem(esportes[1],total));
      printf("Capoeira %0.0f%\n",porcentagem(esportes[2],total));
      printf("Natação %0.0f%\n",porcentagem(esportes[3],total));
      printf("Vaquejada %0.0f%\n",porcentagem(esportes[4],total));
      printf("Outros %0.0f%\n",porcentagem(esportes[5],total));
      getchar();
      getchar();
   }      
}

3 - Faça um algoritmo q mostre duas funções, uma que faz a soma de dois números e a outra diz se é par ou ímpar. Usando só variáveis locais.
# include<stdio.h>
int soma(int a,int b){
    int c;
    c=a+b;
    return c;
}
int escolha(int z){
    int x;
    x=z%2;
    if(x==0){
    printf("A soma=N°par");
    }
    else{
    printf("A soma= N° impar");
    return 0;
    }
}
int main(){
    int valor1,valor2,resultado;
    scanf("%d",&valor1);
    scanf("%d",&valor2);
    resultado=soma(valor1,valor2);
    escolha(resultado);
    return 0;
}

4 - Digitar um nome e solicitar que seja mostrado em maiúsculo na tela.
#include<stdio.h>
#include<string.h>
int main(){
    int x,tam;
    float M;
    char nome[30];
    printf("Digite um nome:\n ");
    gets(nome);
    tam = strlen(nome);
    for(x=0; x<=tam-1; x++){
        printf("%c\a",toupper(nome[x]));
        for(M=1; M<=10000000; M++);
    }
    printf("\n");
    return(0);
}

5 - Receber um nome no usuario e imprimi-lo dez vezes.
#include<stdio.h>
#include<math.h>
int main(){
    char nome[30];
    int t=0, cont=1;
    printf("Digite um nome:\n ");
    gets(nome);
    t=t+1;
    printf("Mostrar nome dez vezes:\n");
    printf("\n\n");
    for(t=1;t<=10;t++){
        printf("\n %d - %s",cont,(nome));
        cont=cont+1;
    }
    printf("\n\n");
    return( 0);
}

6 - Apresentar todos os números divisíveis por 4 que sejam menores que 200.
#include <stdio.h>
#include<math.h>
int main(){
    int x;
    for(x=1; x<200;x++)
    if (x % 4 == 0)
    printf("%d\n",x);
    return 0;
}

7 - O que estar errado neste algoritmo?
#include<stdio.h>
Int funçao1(inte){
Intx;
x=e
return 0;
}
Int main(){
Inta=2, int valor;
Valor=funçao1(a,b);
}
Resposta:
O algoritmo esta errado porque o return da funçao1 é zero e era pra ser x, na função main o b não é declarado e não pode passa por parâmetro pois na fuçao1 só recebe um valor.
8 - Faça um algoritmo que tenha passagem de parâmetros por valor.
#include <stdio.h>
    int soma(int a,int b){
    int c;
    c=a+b;
    return c;
} 
int main(){
    int d=10, f=2, g;
    g=soma(d,f);
}

9 - Faça um algoritmo que leia dois números e o resultado da soma se for par incremente e se for ímpar decremente.
#include<stdio.h>
int main(){
    int n1,n2,resultado,v,p,I;
    printf("Digite o 1° número\n");
    scanf("%d",&n1);
    printf("Digite o 2° número\n");
    scanf("%d",&n2);
    resultado=n1+n2;
    v=resultado%2;
    if(v==0){
        printf("número é par\n");
        p=v++;
    }
    else{
        printf("número é ímpar \n");
        I=v--;
    }
}

10 - Faça um algoritmo tenha a função void e chame função void na função principal.
#include<stdio.h>
void menu(){
    printf(" menu\n");
    printf(" 1-soma\n");
    printf(" 2-subtrair\n");
    printf(" 3-multiplicar\n");
    printf(" 4-dividir\n");
}
int main(){
    int op;
    menu();
    scanf("%i",&op);
    switch(op){
        case 1:
            printf("soma");
            printf(" %i",5+10);
        break;
        case 2:
            printf("subtrair");
            printf(" %i", 5-10);
        break;
        case 3:
            printf("multiplicar");
            printf(" %i", 5*10);
        break;
        case 4:
            printf("dividir");
            printf(" %i", 5/10);
        break;
        default:
            printf("opção invalida");
        break;
    }
}

Ediane Barros da Silva

1) Quais as vantagens de se utilizar Struct? Dê exemplo.

//O struct trata de organizar os dados utilizados pelo programa,tratando assim um grupo de variáveis como sendo uma única variável.//
//Exemplo//
   struct dadospessoais {
      char nome [40];
      char dataNascimento [10];
   }

2) Dê exemplos de uma função.
#include<stdio.h>
int soma(int i,int y) {
 
    return(i+y);
}
int main(){
   int x,j;
   printf("Digite 1º numero:\n");
   scanf("%i",&x);
   printf("Digite 2º numero:\n");
   scanf("%i",&j);
   printf("A soma é:%i\n",soma(x,j));
}
//Neste programa estou utilizando uma função soma que esta antes do main.//

3) O que são funções que devolvem valores não-inteiros? Dê exemplos.

4) Faça um programa que utilize uma função do tipo padrão.
#include<stdio.h>
int multiplicacao () {
   int a=10,c;
   c=a/2;
   printf("%i\n",c);
}
int main () {
   multiplicacao ();
}

5) Para que serve uma biblioteca de funções?
//Para que possa ser carregada e linkeditada apenas as funções que o programa realmente precise.//

6) Faça um algoritmo que converta uma letra minúscula em maiúscula, utilizando funções.

7) Faça um programa que mostre a localização que são postas as variáveis globais e locais.
#include<stdio.h>
   int a;//Variávies globais//
   a=8;
int main () {
   int i,j;//Variáveis locais//
   i=2;
   j=a+i;
   printf("%i",j);
}

8) O que são parâmetros formais? Dê exemplos mostrando onde estão legalizadas.
//São variáveis semelhantes as variáveis locais, e se carscteriza por receber argumentos de uma função e estão colocadas no cabeçalho do procedimento.//
int funcao (int a,int b)
//parâmetros formais//

9) Escreva um programa que declare uma variável inteira global e atribua o valor 1 a ela. Declare outras 2 variáveis locais ao programa principal e atribua os valores 2 e 3 a elas. Declare 4 variáveis caracteres e distribua a elas as letras U, E, R e N. Imprima todas as variáveis declaradas.
#include<stdio.h>
   int i=1;
int main () {
   int a=2,b=3;
   char c='u',d='e',e='r',f='n';
   printf("%i",i);
   printf("%i%i",a,b);
   printf("%c%c%c%c\n",c,d,e,f);
}

10) Escreva um programa que utilize um parâmetro de passagem de valor.
#include<stdio.h>
int multiplicaçao(int x,int y) {
   int z;
   z=x*y;
   return z;
}
int main () {
   int a,b,c;
   scanf("%i",& a);
   scanf("%i",& b);
   c=multiplicacao (a,b);
   printf("%i", c);
   return(0);
}

Aparecida Lopes de Medeiros

1) O que é função e como utilizar? Dê exemplos.
São módulos ou blocos de código que executam uma determinada tarefa, ou seja, recebe informação de entrada e gera informações de saída. É utilizada para depurar os erros, ou seja, fica mais claro (facilita), para achar o erro e pode ser utilizável no meio do programa, além de diminuir o corpo do programa.
Ex.:
int subtração(int a, int b){
int c;
c=a-b;
return c;
}

void menu(){
printf(“-Menu—\n”);
printf(“1- Somar\n”);
printf(“2 – Subtração\n”);
}
2) Faça um programa utilizando função, que multiplique 2 números e diga se esse resultado é maior ou menor que 20.

#include<stdio.h>
   int multiplicacao(int i, int j){
      int k;
      k= i*j;
      return k;
}
int main () {
   int n1,n2,r;
   printf("Digite um número:\n");
   scanf("%i",&n1);
   printf("Digite um número:\n");
   scanf("%i",&n2);
   r=multiplicacao(n1,n2);
   if(r<20){
      printf("O resultado é: %i, e ele é menor que 20!\n",r);
   }else{
      printf("O resultado é: %i, e ele é maior que 20!\n",r);
   }
}

3) Faça um programa utilizando função, que divida 2 números e depois diga se o resultado é par ou ímpar.
#include<stdio.h>
   int divisao(int d, int e){
      int f;
      f= d/e;
      return f;
}
int main () {
   int n1, n2, resultado, r;
   printf("Digite um número:\n");
   scanf("%i",&n1);
   printf("Digite um número:\n");
   scanf("%i",&n2);
   r= divisao(n1,n2);
   resultado= r%2;
      if(resultado ==1){
      printf("O resultado é %i, e é um número ímpar.\n",r);
      }else{
      printf("O resultado é %i, e é um número par.\n",r);
      }   
}

4) Faça um programa que mostre o número que você digitou e logo em seguida diga seu quadrado, utilizando função.
#include<stdio.h>
   int sqr(int n){
      float p;
      p= n*n;
      return p;
}
int main () {
   int n1,r;
   printf("Digite um número:\n");
   scanf("%i", &n1);
   r= sqr(n1);
   printf("O número é %i, e o seu quadrado é %i.\n", n1,r);
}

5) Faça um programa utilizando função, que peça ao usuário para digitar um nome e se neste nome tiver a letra A retorne 1, se não retorne 0.
#include<stdio.h>
   char nome (char n){
      char a;
      if (n==a){
         return 1;
      }else{
         return 0;
      }
}
int main () {
   char p[20];
   printf("Digite um palavra:\n");
   scanf("%s",&p[20]);
      if(nome(p[20])){
         printf("A palavra  contém a letra A!\n");
      }else{
         printf("A palavra  não contém a letra A!\n");
      }
}

6) Por que devemos evitar a utilização de variáveis globais?
Porque elas ocupam memória o tempo todo, diferente das variáveis locais que só ocupam, enquanto estão sendo usadas, e por tornar o programa mais difícil de ser entendido e menos geral.
7) Faça um programa que faça 2 perguntas ao usuário e retorne uma frase envolvendo as respostas, utilizando registro.
#include<stdio.h>
typedef struct pessoa {
   char nome[50];
   char email[100];
}pessoa;
int main (){
   pessoa a,b;
   printf("Digite seu nome:\n");
   scanf("%s",&a.nome);
   printf("Digite seu e-mail:\n");
   scanf("%s",&b.email);
   printf("Olá, %s já estou com seu e-mail %s!\n",a,b);
}

8) Faça um programa que implemente um menu de opções e quando o usuário escolher uma opção ela deve ser exibida, utilizando função.
#include<stdio.h>
void menu () {
   printf("***Estados do Brasil***\n");
   printf("1- Nordeste\n");
   printf("2- Norte\n");
   printf("3- Suldeste\n");
   printf("4- Sul\n");
   printf("5- Centro-Oeste\n");
}
int main () {
   int op;
   menu();
   scanf("%i",&op);
      switch (op){
         case 1:
            printf("Você escolheu o Nordeste, os estados são:\n");
            printf("RN, MA, CE, PI, SE, BA, AL, PB e PE\n");
            break;
         case 2:
            printf("Você escolheu o Norte, os estados são:\n");
            printf("AC, AM, RO, RR, PA e TO\n");
            break;
         case 3:
            printf("Você escolheu o Suldeste, os estados são:\n");
            printf("SP, MG, RJ e ES\n");
            break;
         case 4:
            printf("Você escolheu o Sul, os estados são:\n");
            printf("PR, SC e RS\n");
            break;
         case 5:
            printf("Você escolheu o Centro-oeste, os estados são:\n");
            printf("MT,MS e DF\n");
            break;
         default:
            printf("Opção Inválida!\n");
            break;
      }
   printf("\n");
   menu();
   printf("\n");
}

9) Faça um programa que der a potência de um número, utilizando função.
#include<stdio.h>
#include<math.h>
int potencia (int x, int y){
   int z;
   z= pow(x,y);
   return z;
}
int main () {
   int n1, n2, r;
   printf("Digite um número:\n");
   scanf("%i",&n1);
   printf("Digite um número para ser a potência:\n");
   scanf("%i",&n2);
   r=potencia(n1,n2);
   printf("A potência do número %i, é: %i\n",n1,r);
}

10) Faça um programa que subtraia 2 números e depois diga se o resultado é positivo ou negativo, utilizando função.
#include<stdio.h>
int subtracao(int s, int t){
   int v;
   v=s-t;
   return v;
}
int main () {
   int num1, num2, result;
   printf("Digite um número:\n");
   scanf("%i",&num1);
   printf("Digite um número\n");
   scanf("%i",&num2);
   result=subtracao(num1,num2);
   if(result>0){
      printf("O resultado é %i, e é positivo!\n",result);
   }else{
      printf("O resultado é %i, e é negativo!\n",result);
   }
}

Neilma Maria da Rocha

1) Onde podemos declarar variáveis dentro do código? O que isso influencia no seu uso?
Dentro de uma função, na definição dos parâmetros das funções e fora de todas as funções.

2) Diga como pode ser usado o comando return?
Primeiro, ele provoca uma saída imediata da função que o contém, ou seja, faz com que a execução do programa retorne ao código chamador. Segundo, ele pode ser usado para devolver um valor.

3) Faça um algoritmo usando o comando return:

#include<stdio.h>
#include<stdlib.h>
#include<math.h>
        int main(int argc, char *argv[])
   {
        int num, sr, flag, i;
        if (argc !=2) return 1;
        num= atoi(argv[1]);
        sr= (int)sqrt (num);
        if (num<2)
           flag =0;
        else
        {
            flag=1;
            for(i=2; i<=sr; i++)
                if(num %i ==0)
                {
                       flag=0;
                       break;
                }
        }    
        if (flag)printf("%d e' primo\n",num);
        else printf("%d nao e' primo\n",num); 
        return 0;
 
   system ("pause");
}

4) Há varias funções de entrada e saída via teclado e em arquivos cite umas e diga o que cada uma faz?
int getch(void); lê um caracter do teclado.
char putc (int c, FILE *stream);imprime um caracter no arquivo especificado.
char scanf (char *format [,argumentos, …]); lê seqüência de caracteres ou valor.

5) Defina parâmetros formais e parâmetros reais?
Parâmetros formais: são as variáveis colocadas no cabeçalho de um procedimento
Parâmetros reais: são as variáveis ou constantes que aparecem na chamada dos procedimentos.

6) O que é registro?
São conjuntos de dados logicamente relacionados, mas de tipo diferentes.

7) Registros correspondem a conjuntos de posições de memória conhecido pelo mesmo nome e individualizados por identificadores associados a cada conjunto de posições. Explique a criação de um registro:
O nome do registro: e o nome escolhido pelo programador e será considerado como novo tipo de dados, como tipos básicos.
Componentes do registro: é o local onde o programador definirá as variáveis desse novo tipo, se valendo de outros tipos já definidos. A definição de um registro pode ser definida em função de outros registros já definidos.

8) Diga as operações básicas que podem ser feita em um arquivo através de um algoritmo
- Obtenção de um registro (leitura);
- Inserção de um novo registro (gravação);
- Modificação de um registro (alteração);
- exclusão de um registro (exclusão).

9) os arquivos podem ser organizados de que formas?
Seqüencial, onde os registros são obtidos ou inseridos no arquivo um após o outro;
Direta, onde o acesso ao registro é feito em ordem aleatória.

10) Os parâmetros reais substituem os parâmetros formais no ato da chamada de um subalgoritmo. Esta substituição é denominada passagem de parâmetros e pode se dar por dois mecanismos. Quais são eles e como e feita à passagem de cada um?
Passagem por valor: O parâmetro real é calculado e uma copia de seu valor é fornecida ao parâmetro formal, no ato da chamada do subalgoritmo. E a passagem por referencia: não é feita uma reserva de espaço de memória para os parâmetros formais.

Francisco Magnum R. Justino

1) Construa um algoritmo que leia a idade de uma pessoa e informe a sua classe eleitoral.
Resposta:

#include <stdio.h>

#include <stdlib.h>

#include <math.h>

main()

{

int idade;

printf("\nInforme sua idade: ");

scanf("%d", &idade);

if (idade < 16)

printf("\nNao eleitor.\n");

else

if (idade >= 18 && idade <=65)

printf("\nEleitor obrigatório.\n");

else

if ((idade >= 16 && idade < 18) || (idade >65))

printf("\nEleitor facultativo.\n\n");

return 0;

}
2) Construa um algoritmo que receba um nome e imprima as 4 primeiras letras do nome.
Resposta:

#include <stdlib.h>

#include <math.h>

#include <stdio.h>

main()

{

char nome[30];

int B,tam;

printf ("Digite o nome:");

gets(nome);

tam=strlen(nome)

printf("As quatro ultimas letras sao:");

for(B=tam-1;B<=0;B—)

printf("\%c",nome[B]);

printf ("\n\n");

return 0;

}

3) Para ler uma string de caracteres qual função deve ser utilizada,getchar ou gets. Dê exemplo ?
resposta:

Utiliza-se o gest, pois ele lê uma string do teclado, já o getchar lê um caracter do teclado aguardando o ENTER.

Exemplo:

#include <stdio.h>

int main ()

{

char string[100];

printf ("Digite uma string: ");

gets (string);

printf ("\n\nVoce digitou %s",string);

return 0;

}

4) Para ler uma string de caracteres qual função deve ser utilizada,getchar ou gets. Dê exemplo ?
resposta:
Utiliza-se o gets, pois ele lê uma string do teclado, já o getchar lê um caracter do teclado aguardando o ENTER.

Exemplo:

#include <stdio.h>
int main ()
{
char string[100];
printf ("Digite uma string: ");
gets (string);
printf ("\n\nVoce digitou %s",string);
return 0;
}

5) Construa um algoritmo que preencha um vetor com 6 números e mostre os na tela.
Resposta:

#include<stdio.h>

#include<string.h>

#include<math.h>

main()

{

int x, vetp[6];

for(x=1; x<=6; x++)

{

printf ("\tDigite um numero: ");

scanf("%d",&vetp[x]);

printf ("\n");

}

for(x=1; x<=6; x++)

printf ("%d\t",vetp[x]);

printf ("\n");

printf("\n");

return 0;

}

6) O que faz a linha de comando while. Dê exemplo?
Resposta:

Ele permite que o código fique sendo executado numa mesma parte do programa de

acordo com uma determinada condição.

Exemplo:

#include<stdio.h>

int main()

{

int i;

i=0;

while(i<6)

{

pirntf(“%d\n”, i);

i++;

}

7) O que é string, quais os tipos. Dê exemplo?
Resposta:

Strings é uma das mais úteis e importantes formas de dados em C. Armazena e manipula textos como palavras e sentenças. Tipos de strings são; Função gets(), Função puts(), Função strcpy(), Função strcat(), Função strcmp().

Exemplos:

Função gets

Ex:

#include<stdio.h>

main()

{

char str[80];

gets(str);

printf("%s",str);

}

------

Função puts

Ex:

#include<stdio.h>

main()

{

puts("mensagem");

}


Função strcpy

Ex:

#include<stdio.h>

main(){

char str[80];

strcpy(str,"alo");

puts(str);

}


Função strcat

Ex:

#include<stdio.h>

main()

{

char um[20],dois[10];

strcpy(um,"bom");

strcpy(dois," dia");

strcat(um,dois);

printf("%s\n",um);

}


Função strcmp

Ex:

#include<stdio.h>

main()

{

char s[80];

printf("Digite a senha:");

gets(s);

if (strcmp(s,"laranja"))

printf("senha inválida\n");

else

printf("senha ok!\n") ;

}

8) Construa um algoritmo que leia nome, endereço, telefone e imprima.
Resposta:

#include <stdio.h>

#include <stdlib.h>

#include <math.h>

int main()

{

char nome[30], endereco[30], telefone[15];

printf("Informe seu nome: ");

gets(nome);

printf("Informe seu endereco: ");

gets(endereco);

printf("Informe seu telefone: ");

gets(telefone);

printf("\n\nNome: %s\n\n",nome);

printf("Endereco: %s\n\n",endereco);

printf("Telefone: %s\n\n",telefone);

return 0;

}

9) Qual a diferença entre variáveis locais e variáveis globais?
Resposta:

As Variáveis Locais: Só têm validade dentro do bloco no qual são declaradas, isto é, só a função à qual ela

pertence sabe da existência desta variável, dentro do bloco no qual foram declaradas.

Variáveis Globais: Podem ser usadas a partir de qualquer lugar no programa. Pode-se dizer que, como elas estão

fora de todas as funções, todas as funções as vêem.

10) Construa um vetor que preencher um vetor com os números pares do número 2 a 20.
Resposta:

#include<stdio.h>

#include<stdlib.h>

#include<math.h>

main()

{

int vet[10],x, y=0;

// preechimento do vetor vet

for(x=0;x<=9;x++)

{

vet[x]=y+2;

y=y+2;

}

//exibindo o vetor vet, por isso repete o for.

for(x=0;x<=9;x++)

//exibindo os valores pares 2,4,6,8,10,12,14,16,18,20.

printf(" %d ",vet[x]);

printf("\n\n");

return(0);

}
11) Criar uma função que receba um caractere como parâmetro e retorne 1 (um) caso seja uma vogal e zero caso não seja.

Resposta:

#include<stdio.h>

#include<string.h>

#include<math.h>

int verificavogal (char M)

{

if(M=='a' || M=='A' || M=='e' || M=='E'

|| M=='i' || M=='I' || M=='o' || M=='O' || M=='u' || M=='U')

return(1);

else

return(0);

}

main()

{

char x;

printf("Digite uma letra: ");

scanf("%c",&x);

if(verificavogal(x)==1)

printf("\nA letra [ %c ] é uma vogal: ",x);

else

printf("\nA letra [ %c ] é uma constante: ",x);

printf("\n\n");

return(0);

}

Sarah Raquel da R. Silva

1. Faça uma função “EhPositivo” que receba um valor inteiro e verifique se o valor é positivo ou negativo, retornando 1 se positivo e 0 se negativo. (considere 0 positivo)

#include<stdio.h>
#include<stdlib.h>
int EhPositivo(int num){
   if(num<0)
      return(0);
   else
      return(1);
   }
int main(){
    int a;
    printf("digite um numero inteiro:\n");
    scanf("%i",&a);
    if(EhPositivo(a))
       printf("eh positivo\n");
    else
       printf("eh negativo\n");
    system("pause");    
    }

2. Faça uma função celsiusFahrenheit que receba um valor float representando grau celsius, o converta para fahrenheit e retorna-o. F = C * 1,8 + 32.
#include<stdio.h>
#include<stdlib.h>
float CelsiusFahrenheit(float c){
 
      return(c*1,8 + 32);
  }
int main(){
    float grau,f;
    printf("diga o valor em grau celsius:\n");
    scanf("%f",&grau);
    f = CelsiusFahrenheit(grau);
    printf("o valor convertido em fahrennheit eh:%.0f\n",f);
    system("pause");
    }

3. Faça uma função que receba como parâmetro o raio de uma esfera, calcule e retorna o seu volume (v = 4/3 * R³).
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
float volumeEsfera (float R)
{
      return(4/3 * pow(R,3));
      }
int main(){
    float raio;
    printf("qual o raio da esfera:\n");
    scanf("%f",&raio);
    printf("o volume da esfera eh: %.0f\n",volumeEsfera(raio));
    system("pause");
}

4. Faça uma função que receba um número inteiro e positivo, calcule e retorna o seu fatorial.
#include<stdio.h>
#include<stdlib.h>
int fatorial (int n){
    int i;
    int f=n;
    for(i=1;i<n;i++){
       f= f*i;
       }
       return(f);
    }
int main(){
    int valor;
    printf("digite  um valor:\n");
    scanf("%i",&valor);
    printf("o fatorial de %i eh: %i \n",valor,fatorial(valor));
    system("pause");
 
    }

5. Faça uma função que receba, por parâmetro, dois valores inteiros X e Z, calcule e retorne X elevado a Z (sem utilizar a biblioteca math.h).
#include<stdio.h>
#include<stdlib.h>
float potencia(float x, float z){
    float i,resultado=1;
    for(i=0;i<z;i++){
       resultado=resultado*x;
       }
       if(z==0){
          printf("O resultado da potencia eh: 1\n");
          }else
            if(z>0){
             printf("O resultado da potencia eh:%.0f\n",resultado);
           }
           else
             if(z<0){
                for(i=0;i>z;i--){
                   resultado=resultado*x;
                   }              
                   printf("O resultado da potencia eh: 1/%.0f\n",resultado);
           }
 
       }
int main(){
    float a,b;
    printf("qual o valor da base?\n");
    scanf("%f",&a);
    printf("qual o valor do expoente?\n");
    scanf("%f",&b);
    potencia(a,b);
    system("pause");
    }

6. Faça uma função que receba, por parâmetro, um vetor X de números reais e um inteiro N
que é o número de elementos em X (N é no máximo 50). A função deve retornar a soma (o somatório) dos elementos de X.
#include<stdio.h>
#include<stdio.h>
float somatorioVetor (int n,float v[n]){
    int i;
    float somatorio=0;
    for(i=0;i<n;i++){
        somatorio = somatorio + v[i];
    }
     return(somatorio);
}
int main(){
 
    int n,i;
    printf("Digite o tamanho do vetor:\n ");
    scanf("%d",&n);
    float v[n];
    printf("Digite os %d elementos do vetor:\n ",n);
 
    for(i=0;i<n;i++){
        scanf("%f",&v[i]);
    }
    printf("\nO somatorio dos elementos do vetor e: %.2f\n\n",somatorioVetor(n,v));
    system("pause");
}

7. Faça uma função que receba três notas de um aluno como parâmetros e uma letra.Se a letra
for A a função calcula a média aritmética das notas do aluno, se for P a função calcula a média ponderada com pesos4, 5 e 6, respectivamente. A média calculada deve ser devolvida ao programa principal para, então, ser mostrada.
#include<stdio.h>
#include<stdlib.h>
float media(float n1,float n2,float n3,char letra){
      if(letra=='a')
         return((n1+n2+n3)/3);
      else
         return(((n1*4)+(n2*5)+(n3*6))/15);
            }
 
int main(){
    float a,b,c;
    char letra;
    printf("qual a primeira nota?\n");
    scanf("%f",&a);
    printf("qual a segunda nota?\n");
    scanf("%f",&b);
    printf("qual a terceira nota?\n");
    scanf("%f",&c);
    printf("\n escolha\n a -media aritmetica\n p -media ponderada\n");
    getchar();
    scanf("%c",&letra);          
    while(letra!='a' && letra!='p'){
        printf("\nLETRA INCORRETA\n\n escolha\n a -media aritmetica\n p -media ponderada\n");
        getchar();
        scanf("%c",&letra);    
    }
 
    printf("a media eh: %.2f\n",media(a,b,c,letra));
    system("pause");
  }

8. Faça uma função que receba um número inteiro e positivo N como parâmetro e retorne
soma dos N números inteiros existentes entre 1 (incluso) e esse número (incluso).
#include<stdio.h>
#include<stdlib.h>
int somatorio(int n){
    int s=1;
    int i;
    for(i=1;i<=n;i++)
       s=s+i;
       return(s);
    }
int main(){
    int num;
    printf("digite um numero:\n");
    scanf("%i",&num);
    printf("o soma de todos os numeros eh: %i\n",somatorio(num));
    system("pause");
 
    }

9. Faça uma função que recebe um inteiro n e retorna o n-ésimo elemento da sequencia de fibonacci.int fibonacci (int n)
#include<stdio.h>
 
int nFibonacci(int n){
 
    int a=1,b=1,i,aux;
 
    for(i=2;i<n;i++){
       aux = b;
       b = aux + a;
       a = aux;
    }
 
    return b;
 
}
int main(){
    int n;
    printf("Digite um numero: ");
    scanf("%d",&n);
    printf("\nO elemento da sequencia fibonacci na posicao %d e: %d\n\n",n,nFibonacci(n));
    system("pause");
 
    return 0;
}

10. Faça uma função que recebe dois inteiros m e p (p<m) e retorna a combinação entre esses dois números.C(m,p) = m!/[(m-p)! p!]
#include<stdio.h>
#include<stdlib.h>
int fatorial(int n){
    int resultado=1;
    while(n>1){
        resultado = resultado * n;
        n--;
        }
}
float combinacao(int n, int p){
 
    return(fatorial(n)/(fatorial(p)*fatorial(n-p)));
}
int main(){
   int n,p;
    printf("Digite o valor de n: ");
    scanf("%d",&n);
    printf("Digite o valor de p: ");
    scanf("%d",&p);
    while(n<p){
        printf("O valor deve n deve ser maior do que p!\n\nRedigite o valor de n: ");
        scanf("%d",&n);
        printf("Redigite o valor de p: ");
        scanf("%d",&p);
    }
 
    printf("\nA combinacao entre n e k e: %.0f\n\n",combinacao(n,p));
    system("pause");
    }

Izabela Cristina Barreto dos Santos

1. Faça um algoritmo que execute uma função de multiplicação que entre com dois valores e retorne um outro valor.
#include<stdio.h>

int multiplicacao (int x,int y){
int z;
z=x*y;
return z;
}
int main () {
int a,b,c;
scanf("%d",& a);
scanf("%d",& b);
c = multiplicacao(a,b);
printf("o valor de c eh:%d",c);
system("pause");
}

2. Qual a diferença de passagem de parâmetros por valor e passagem por referencia?
A passagem de parâmetros por valor não modifica o valor da variável e a passagem por referência modifica o endereço da variável.

3. O que é denominado como uma coleção de um ou mais valores, agrupados sob um único nome? E para que serve?
Estrutura (struct )ou registro em c, serve como um recurso importante para organizar os dados utilizados por um programa usando um grupo de valores como uma única variável.
4. O comando return é importante para que?
O comando return tem dois importantes usos. Primeiro, ele provoca uma saída imediata da função que o contém. Isto é, faz com que a execução do programa retorne ao código chamado. E ele pode ser usado para devolver um valor.

5. O que é “sqrt”? Dê um exemplo.
O sqrt é um comando que é utilizado para calcular raiz quadrada.
Exemplo:

#inculde<stdio.h>
#include<stdlib.h>
#include<math.h>
int main () {
int x, y, d;
printf("digite os valores para x,y\n");
scanf("%i",&x);
scanf("%i",& y);
d=sqrt(x*y);
sustem ("pause");
}
6. Faça um algoritmo que utilize funções, uma para somar dois números inteiros e devolver um outro,
#include<stdio.h>
#include<stdlib.>
int soma(int x, int y);
int z;
z=x+y;
return z;
}
int main (){
int n1,n2,resultado;
scanf("%i",& n1);
scanf("%i",& n2);
resultado=soma(n1,n2);
}
7. O que são e para que serve as funções? Dê exemplos.
Uma função é um bloco de código reutilizável que pode receber parâmetros ou não,do mesmo modo que pode ter um retorno de informação ou não.com
a utilização de funções eu posso poupar códigos,quando esse código é utilizado diversas vezes e também posso utilizar as funções de terceiros.
Exemplo:
#include<stdio.h>
#include<math.h>
int multiplica(int x, int y){
int z;
z=x*y;
return z;
}
int main (){
int a,b,c;
scanf("%d",& a);
scanf("%d",& b);
c=multiplica(a,b);
}
8. Faça um algoritmo que calcule dois vetores, depois imprima sua soma, utilize funções.
#include<stdio.h>
#include<math.h>
int n{
printf("digite o tamanho do vetor:\n");
scanf("%i",&n);
}
int somavetor(int x[i], int y[i]);
int r[n];
for(i=o;i>n;i++){
r[n]=x[i]+y[i];
return r[n];
]
int main (){
int v1[n],v2[n]soma;
soma=somavetor(v1[n],v2[n]);
return soma;
}
system ("pause")

9.Como é feita a declaração de variável do tipo estrutura?
A declaração de variáveis do tipo estrutura é feita da seguinte maneira:
> Struct ponto p1,p2;
> Struct professor;10.
10. Faça um algoritmo que implemente a força que um corpo faz sobre outro.

#include<stdio.h>
#include<stdlib.h>
int forca(int m,int d){
return (m*d);
}
int main (){
int massa,desloc;
printf("qual o valor da massa exercida no corpo:\n");
scanf("%i",& massa);
printf("Qual o deslocamento:\n");
scanf("%i",& desloc);
printf("a força exercida no corpo eh:%i\n",forca(massa,desloc));
system ("pause");
}

Gustavo Alexandre Barbalho Nunes

1) algoritmo que leia o valor digitado pelo usuario e retorne o quadrado desse valor.

#include<stdio.h>
#include<stdlib.h>
int square(int x){
    printf("o quadrado eh %d:\n",(x*x));
}
int main(){
    int num;
    printf("digite um numero\n");
    scanf("%d",&num);
    square(num);
    system("pause");
}

2) faça um algoritmo q leia um valor digitado pelo usuario e depois imprima o sucessor e o antecessor desse valor.
#include<stdio.h>
#include<stdlib.h>
int main(){
    int n,a,s;
    printf("digite um numero:\n");
    scanf("%i",&n);
    a=n-1;
    s=n+1;
    printf("o antecessor de %i eh:%i\n o sucessor de %i eh:%i\n",n,a,n,s);
    system("pause");
}

3) algoritmo que leia um numero digitado pelo usuario e diga se esse numero é par ou impar.
#include <stdio.h>
#include<stdlib.h>
int ehpar (int a)
{    
    if (a%2)          
          return 0;        
    else
          return 1;       
}
int main ()
{
    int num;
    printf ("Entre com numero: ");
    scanf ("%d",&num);
    if (ehpar(num))
            printf ("\n\nO numero e par.\n");
    else
            printf ("\n\nO numero e impar.\n");
    system("pause");
 
}

4) o que é modularização?
Modularizar é quebrar um problema em pequenas partes,
sendo que cada uma dessas partes será responsável
pela realização de uma etapa do problema.
5) faça um algoritmo que imprima na tela a tecla digitada pelo usuário.
#include<stdio.h>
#include<stdlib.h>
#include <conio.h>
int main ()
{
    char Ch;
    Ch=getch();
    printf ("Voce pressionou a tecla %c:\n",Ch);
    system("pause");
}

6)faça um algoritmo que peça pra o usuário digitar 2 valores binarios(0 ou 1) e imprima o valor das proposiçoes deles no AND OR e NOT.
#include <stdio.h> 
#include <stdlib.h>
int main()
{
    int i, j;
    printf("informe dois numeros(cada um sendo 0 ou 1): ");
    scanf("%d%d", &i, &j);
    printf("%d AND %d eh %d\n", i, j, i && j);
    printf("%d OR %d eh %d\n", i, j, i || j);
    printf("NOT %d eh %d\n", i, !i);
    system("pause");
}

7) o que faz cada um dos códigos abaixo?
%c
%d
%i
%e
%E
%f
%g
%G
%o
%s
%u
%x
%X
%%
%p
Resposta:
%c Um caracter (char)
%d Um número inteiro decimal (int)
%i O mesmo que %d
%e Número em notação científica com o "e"minúsculo
%E Número em notação científica com o "e"maiúsculo
%f Ponto flutuante decimal
%g Escolhe automaticamente o melhor entre %f e %e
%G Escolhe automaticamente o melhor entre %f e %E
%o Número octal
%s String
%u Decimal "unsigned" (sem sinal)
%x Hexadecimal com letras minúsculas
%X Hexadecimal com letras maiúsculas
%% Imprime um %
%p Ponteiro

8) quais são os tipos básicos de dados e os modificadores dos tipos básicos?
char
unsigned char
signed char
int
unsigned int
signed int
short int
unsigned short int
signed short int
long int
signed long int
unsigned long int
float
double
long double
9) quais as palavras chave da linguagem c(padrão ANSI)?
auto Double int Struct
break Else long Switch
case Enum register typedef
char Extern return union
const Float short unsigned
continue For signed void
default Goto sizeof volatile
do If static while
10)Onde, quando, como, e quem criou a linguagem c? em que é utilizada?
O C nasceu na década 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.

O C é uma linguagem de programação genérica que é utilizada
para a criação de programas diversos como processadores de texto,
planilhas eletrônicas, sistemas operacionais, programas de comunicação,
programas para a automação industrial, gerenciadores de bancos de dados,
programas de projeto assistido por computador, programas
para a solução de problemas da Engenharia, Física, Química e outras Ciências,
etc … É bem provável que o Navegador que você está usando para ler este texto
tenha sido escrito em C ou C++.

Rejane Maria R. da Silva

1) Utilizando a função strcmp, faça um algoritmo que compare duas strings e diga se são iguais ou diferentes.

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
  int main (){
            char str1[100],str2[100];
            printf ("Entre com uma string:\n ");
            gets (str1);
            printf ("Entre com outra string:\n ");
            gets (str2);
            if (strcmp(str1,str2))
                    printf ("As duas strings sao diferentes:\n");
            else printf ("As duas strings sao iguais:\n");
            system ("pause");
}

2) faça um programa que use a função strcat é diga o que ela faz?
Concatena duas strings.
#include <stdio.h>
#include <stdlib.h>
int main()
{
char um[20],dois[10];
strcpy(um,"Bom");
strcpy(dois," Dia!");
strcat(um,dois);
printf("%s:\n",&um);
system("pause");
}

3) char, int, float, void e double o que são e pra que sevem cada uma delas num programa? São tipos de variáveis.
int - Variável tipo inteira. Deve ser utilizado para se armazenar valor inteiro, com ou sem sinal.
char - Variável do tipo caracteres. Servirá para se armazenar um único caractere.
float - Para valores com casas decimais (reais) deve-se utilizar este tipo. Ele pode armazenar números reais com até 6 dígitos significativos.
double - É o mesmo que o anterior, só que pode armazenar mais dígitos, dando uma precisão maior nos cálculos com casas decimais.
O tipo void deve ser utilizado não para variáveis, mas sim para indicar que uma função não tem nenhum valor retornado ou não possui nenhum parâmetro de entrada.
4) Faça um programa que utilize os operadores relacionais. Os operadores relacionais do C realizam comparações entre variáveis.
#include <stdio.h>
#include<stdlib.h>
int main()
{
int i,j;
printf("Entre com dois numeros inteiros:\n ");
scanf("%i%i",&i,&j);
printf("%i == %i é %i\n", i,j, i==j);
printf("%i != %i é %i\n", i,j, i!=j);
printf("%i <= %i é %i\n", i,j, i<=j);
printf("%i >= %i é %i\n", i,j, i>=j);
printf("%i < %i é %i\n", i,j, i<j);
printf("%i > %i é %i\n", i,j, i>j);
return(0);
system ("pause");
System ("pause");
}

5) O que são strings? Em C não existe um tipo de dado string, no seu lugar é utilizado uma matriz de caracteres. Uma string é uma matriz tipo char que termina com '\0'. Por essa razão uma string deve conter uma posição a mais do que o número de caracteres que
Deseja-se. Constantes strings são uma lista de caracteres que aparecem entre aspas, não sendo necessário colocar o '\0', que é colocado pelo compilador.

6) Faça um programa que demonstre o funcionamento da função gets.

#include <stdio.h>
#include<stdlib>
int main ()
{
char string[100];
printf ("Entre uma string:\n ");
gets (string);
printf ("Voce digitou %s:\n",string);
return(0);
system(pause);
}

7) O que são operadores Aritméticos e de Atribuição? Dê exemplos Os operadores aritméticos são usados para desenvolver operações matemáticas. EX; +, -, *, / , %, ++, —.
O operador de atribuição do C é o =. O que ele faz é pegar o valor à direita e atribuir à variável da esquerda.
8) O que são expressões e para que serve o operador? Expressões são combinações de variáveis, constantes e operadores. O operador serve para determinar uma lista de expressões que devem ser executadas seqüencialmente.
9) Num programa quais os lugares que posso declarar as variáveis?
Há três lugares, O primeiro é fora de todas as funções do programa. Estas variáveis são chamadas variáveis globais. O segundo lugar no qual se podem declarar variáveis é no início de um bloco de código estas variáveis é chamado local, o terceiro lugar onde se podem declarar variáveis é na lista de parâmetros de uma função.

10) O que fazem os comandos break e switch? Exemplifique.
Break tem duas utilizações para terminar um “case” em um comando switch, ou para formar um termino imediato de um laço, evitando o teste normal condicional do laço. O switch é usado para várias seleções como case.

Jaime Bruno Cirne de Oliveira

  1. Toda função na linguagem C tem sua assinatura que informa o seu

returno seu nome e seus parâmetros. T oda função salvo as
funções declaradas com retorno (void) retornam um valor de um
determinado tipo de acordo com sua assinatura. T oda via é natural
a existência de códigos:
int main (){
printf(“Ola mundo”);
}
Em sua assinatura encontramos o (int) que identif ica o retorno de
um valor inteiro, mas não há nenhum return na função. Explique
se esse código esta certo ou errado e porque.
Nos primórdios a função principal (main) tinha a assinatura padrão como
“int main ()” e possuir dentro do seu escopo um “return 0;” que indicava para o
sistema Operacional que o aplicativo havia executado sem problemas. Contudo
essa convenção caiu em de-uso com a uti lização de sistemas operacionais mais
desenvolvidos sendo adotado então o “void main()” que não exige retorno,
porém os compiladores aceitam ainda essa forma e quando o programador não
menciona o seu escopo o “return 0” ele o insere antes da compilação.

  1. Diferencie e conceitue, erro em tempo de compilação e erro em

tempo de execução.
Ao criamos um programa, podem acontecer problemas durante esse
processo, esses problemas são os erros que podem acontecer um tempo de
compilação e tempo de execução. Problemas de erro de compilação são erros
que não não permitem que o compilador transforme o fonte em binário
causando mensagens de erros e abortando a compilação. Na maioria dos casos
desse tipo são problemas de sintaxe. Em erro de tempo de execução o problema
ocorre depois da compilação quando executa o software ele demonstra um mal
funcionamento. A maior partes desse erros é caracterizado como problema
lógico do desenvolvimento.

  1. Explique e exemplifique o compilador C.

O compilador é uma software que vai transformar o código texto em
arquivo binário para que o computador possa entender o programa.

  1. Ao compilar um programa em C é criado um arquivo binár io, esse

arquivo já esta totalmente funcional?
Antes de ser executável o arquivo binário deve passar pelo linkeditor .

  1. Explique o que o programa linkeditor faz.

O linkeditor é um software tornará o pacote binário executável, anexando
a ele as bibliotecas e funções o que o programador para criar o programa.

  1. De o conceito de variável, explicando também seus tipos e

espaços na memória.
A variável é uma espaço na memória principal onde pode-se guardar um
determinado valor que pertença a um tipo daquela variável.

  1. Diferencie quando ao modo qu e funciona o while, for e do…while.O while, executa uma função até que um determinada condição seja

verdadeira, no início do laço ele faz o teste booleano e caso seja falso ele
entra e executa até que a condição seja sanada.
O Do whi le é muito semelhante sendo que o tes te só é feito no final do
laço fazendo com que o bloco de código dentro do laço seja executando
uma vezes pelo menos mesmo que a condição seja verdadeira.
O for é utilizado normalmente quando desejamos que o laço execute um
número pré-determinado de vezes.

  1. Defina Laço infinito.

O laço inf inito é um fenômeno da pr ogramação pr ocedimental, no qual um
laço (for, while e do..while) não consegue chegar a uma conclusão. Isso
pode acar retar problemas em tempo de execução. Normalmente ocorre
quando o parâmet ro de controle fica preso sem poder atualizar .

  1. Qual a vantagem da utili zação da estrutura em relação as tabelas

e vetores?
A estrutura garante uma flexibilidade maior de que tabelas e vetores,
quanto ao tipo de dado, vetores e matrizes possuem valores homogêneos,
em quanto estruturas podem possuir valores heterogêneos.

  1. Quais as vantagens de ter “m odularização” de código?

A primeira grande vantagem a diminuição de código replicado na
aplicação enxugando o escopo. Além disso a modularizado permite o
compartilhamento de funções (dos módulos) com outros programadores
fazendo com que o programador possa abstraia a aquele módulo
permitindo a ele ganhar mais tempo. Outra vantagem é estética e
entendimento do projeto de seu software.

Léa Taciana de Medeiros

1. Faça um programa que leia dois valores numéricos inteiros longos para duas variáveis e que troque o conteúdo dessas variáveis, visualizando o valor das mesmas antes e depois da troca.

# include <stdio.h>
#include <conio.h>
Voide main (void)
           {
           Long a, b, c;
           Clrscr ( ) 
           Prinft (valor A?”);
           Scanf (“%ld”,&a);
           Prinft (valor B?”);
           Fflush (stdin); 
           Scanf (“%ld”,&b);
           Prinft (antes da troca”:\ld)nB=%ld\n”; a, b, c);
           C=a; a=b; b=c;
           Prinft (depois da troca:\nA=%ld\nB=%ld\n”,a ,b);
           Getch ( );
            }

2. Faça um programa que leia um número inteiro longo e que determine o seu módulo sem usar nenhuma função disponível em c para essa finalidade.
#include <stdio.h>
#include <conio.h>
 Void main (void)
          {
          Long x;
          Clrscr ( );
          Prinft (introduza um numero intero?”);
          Scanf (“%ld”,&x);
           If (x<0)
               Prinft (modulo=%ld\n”,x);
           Else
                 Prinft (modulo=%ld\n”,x);
           Getch ( );
           }

3. O que faz o seguinte programa?
#include <stdio.h> 
void main() 
{ 
int x; 
scanf("%d",&x); 
printf("%d",x); 
}

A primeira linha do programa inclui a biblioteca padrão stdio.h. Esta biblioteca será usada para as funções 'scanf' e 'printf'. No início do programa é declarada a variável 'x', inteira. 'scanf' lê x pelo teclado e printf imprime o valor lido. Em tempo de execução o programa irá esperar até que o usuário entre com um número, e exibirá em seguida este número.
4. Escreva uma função que some dois inteiros e retorne o valor da soma. O objetivo neste exercício é apenas escrever a função. Logo, presume-se que já existe um programa que realizará a sua chamada.
int soma2(int a, int b) /* Retorna a soma dos inteiros a e b */ 
{ 
int resultado; 
resultado = a+b; 
return resultado; 
} 
ou de uma forma mais pratica.. 
int soma2(int a, int b) /* Retorna a soma dos inteiros a e b */ 
{ /* Versao 2 */ 
return(a+b); }

5. Diga o resultado das variáveis x, y e z depois da seguinte sequência de operações:
int x,y,z; 
x=y=10; 
z=++x; 
x=-x; 
y++; 
x=x+y-(z--);

x = -11
y = 11
z = 10
Comentários: - Em z = ++x, x é incrementado e então o seu valor e atribuído a z - Em x = x+y-(z—), z e atribuído a x e então acontece o decremento.

6. O que o programa a seguir faz? Qual é o resultado obtido se a string fornecida for:
a) "Ah! Eu to maluco!"
b) "5*4+(3^3)+4*5"

#include <stdio.h>
#include <string.h> 
#define TAM 20 
void main ( ) 
{ 
char s[TAM]; 
int c, i, j; 
for (i=0, j=strlen(s)-1; i<j; i++, j--) 
      { 
      c = s[i]; 
     s[i] = s[j]; 
     s[j] = c; 
     }   
}

A função inverte a string fornecida. Assim, obtém-se:
a) "Ah! Eu to maluco!" => "!oculam ot uE !hA"
b) "5*4+(3^3)+4*5" => "5*4+)3^3(+4*5"
Comentário
- a função começa com i no início e j no final da string. A medida que incrementa e j decrementa, o conteúdo das posições i e j é trocado, resultando na string invertida. - repare que a função é válida para strings de comprimento par ou ímpar: Se for par, existirão 2 elementos medianos, que serão trocados; se for ímpar, ao atingir o elemento mediano, a string já estará toda invertida. - todo string é terminado com \0 (caracter nulo), que não é contado pela função strlen(). Se um string s possui n caracteres (descontando o \0), strlen(s) = n, e existirão elementos no string de s[0] ate s[n-1].

7. Escreva um programa que receba três valores, armazenando-os nas variáveis x,y e z, e ordene esses valores de modo que, ao final, o menor valor esteja armazenado na variável x, o valor intermediário esteja armazenado na variável y e o maior valor esteja armazenado na variável z.

#include<stdio.h>
int main(void)
{
int x,y,z,troca;
printf(digite o valor de x: “);
scanf(”%d”,&x);
printf(digite o valor de y: “);
scanf(”%d”,&y);
printf(digite o valor de z: “);
scanf(”%d”,&z);
if(x>y){
troca=y;
y=x;
x=troca;
}
if(y>z){
troca=z;
z=y;
y=troca;
}
if(x>y){
troca=y;
y=x;
x=troca;
}
printf(”%d,%d,%d”,x,y,z);
getchar();
getchar();
}

8. Dada uma sequência de n elementos, imprimi-la em ordem inversa.

#include
int main(void)
{  
int vet[100],cont,n;
printf("digite o numero de termos da sequencia: ");
scanf("%d",&n);
for(cont=0; cont=0 ;cont--);
printf("%d\n",vet[cont]);
getchar();
getchar();
}

9) Dizemos que uma sequência de n elementos, com n par, se as seguintes somas s são iguais:
a soma do maior elemento com o menor
a soma do segundo maior elemento com o segundo menor
a soma do terceiro maior elemento com o terceiro menor …
#include <stdio.h>
int main(void)
{
int a[50],i,n,j,troca,soma,somant,k;
printf("digite o numero de termos da sequencia: ");
scanf("%d",&n);
for(i=0; i<=n-1 ;i++){
printf("digite um termo da sequencia: ");
scanf("%d",&a[i]);
}
for(i=0; i<=n-1 ;i++){
for(j=i+1; j<=n-1; j++){
if(a[i]>a[j]){
troca=a[j];
a[j]=a[i];
a[i]=troca;
}
}
}
k=n-1;
soma=a[0]+a[k];
for(i=1;i<= (n/2)-1 ;i++){
k—;
somant=a[i]+a[k];
if(soma!=somant)
i=2*n;
soma=somant;
}
if(i==2*n+1)
printf("nao eh balanceada");
else
printf("eh balanceada");
getchar();
getchar();
}

10)Qual a diferença entre variáveis globais e variáveis locais?
Dê exemplos.
Variáveis locais são aquelas utilizadas dentro de apenas um bloco do programa, e as variáveis globais são definidas no inicio do programa e podem ser utilizadas em qualquer parte no decorrer dele.
Ex: #include <stdio.h>
Int x;
Int y; Variáveis globais.

Int main ( ) {
Int z;
Int k;
Variáveis locais (só podem ser utilizadas dentro do main).

Jucieny Dantas Santos

Paulo César R. De Araújo

1. Quais as duas maneiras de enviar valores na chamada de uma função?
As duas maneiras são: pela “passagem de parâmetros por valor e pela passagem de parâmetros por referência”.
2. Crie um algoritmo que mostre uma chamada de função por referência.

void main ( ) {
float a, b;
printf("a = %f, b = %f", a, b);
troca(&a, &b); // passa o endereço de a e de b para a função troca
printf("a = %f, b = %f", a, b);
}

void troca (float *pa, float *pb) {
float aux;
aux = *pa; // troca a e b
*pa = *pb;
*pb = aux;
}

3. Usando estrutura (struct), crie fazer um algoritmo em C que permita a entrada de nome, endereço e telefone de 5 pessoas e os imprima em ordem alfabética.

#include <stdio.h>

struct cadastro {
char nome[20];
char end[50];
char telefone[11];
};

void main()
{
int i;

struct cadastro c[5];

for (i=0; i<5; i++)
{
printf("\n Digite seu Nome : ");
scanf("%s", &c[i].nome);
printf("\n Digite seu Endereco : ");
scanf("%s", &c[i].end);
printf("\n Digite seu Telefone : ");
scanf("%s", &c[i].telefone);
}
for (i=0; i<5; i++)
{
printf("\n Nome : %s", c[i].nome);
printf("\n Endereco : %s", c[i].end);
printf("\n Telefone : %s", c[i].telefone);
printf("\n\n");
}
getch();
}

4. Em quê consiste a modularização de um programa?

Consiste em decompor um programa em módulos correspondentes aos subproblemas determinados pela decomposição de problemas.

5. Escreva uma função que some dois inteiros e retorne o valor da soma. O objetivo neste exercício é apenas escrever a função.

int soma2(int a, int b) /* Retorna a soma dos inteiros a e b */
{
int resultado;
resultado = a+b;
return resultado;
}

6. Faça um algoritmo que utilize registro e dado um horario, se for maior que 6:30 da manha, escrever, vamos acordar, senão, durma bem.

#include<stdio.h>
int main(void)
{
struct{
int horas;
int minutos;
int segundos;
}horario;
printf(”digite as horas: “);
scanf(”%d”,&horario.horas);
printf(”digite os minutos: “);
scanf(”%d”,&horario.minutos);
printf(”digite os segundos: “);
scanf(”%d”,&horario.segundos);
if(horarario.horas>6 && horario.minutos>30)
printf(”vamos acordar!!!”);
else
printf(”durma bem”);
getchar();
getchar();
}

7. Analise o código a seguir. Preencha as linhas de comentários para responder a questão.

int func1 (char carac, int inteiro, float flutuante)/* declaração da funcao */
{
int outra; /* pode-se declarar outras variáveis aqui dentro, como em um trecho normal de programa estas variáveis são locais da função */
printf(“%c”, carac); /* uso das variáveis recebidas como parâmetro */
printf(“%f”, flutuante);
scanf(“%d”, &outra);
printf(“%d”, inteiro + outra);
return outra; /* retorna o valor da variável ‘outra’ */
} /* fim da função */
void main (void) /* programa principal */
{
char c1;
float f;
int resultado;
int inteiro; /* esta variável ‘inteiro’ existe no escopo da função‘main’, logo não tem nada a ver com a variável ‘inteiro’ que é criada na função ‘func1’ no momento da passagem dos parâmetros */
scanf(“%d, %c, %f”, &inteiro, &c1, &f); /* lê um número inteiro, um caracter e um float */
resultado = func1(c1, inteiro, f); /* chama a função ‘func1’ com os parâmetros na ordem correta */
printf(“%d”, resultado); /* imprime resultado da função */

8. Comente o código abaixo.

soma (int vet[5])
{
int i, s=0;
for(i=0; i<5; i++) s+=vet[i];
return s;
}

• A função soma() retorna um valor inteiro, presente na variável s.
• A função soma() recebe um vetor de 5 posições inteiras por parâmetro.
• As variáveis i e s são locais à função soma().
• Como nenhuma palavra foi incluída na frente do nome da função soma(), indica que a mesma retorna um valor inteiro.

9. De acordo com o exemplo abaixo:
int main(){
int s, m;

return 0;
}

Qual das alternativas abaixo está CORRETA:
a. As variáveis s e m são locais à função main() e não podem ser acessadas por outras funções.
b. As variáveis s e m são locais à função main(). Mas podem ser acessadas de outras funções.
c. As variáveis s e m são globais.
d. As variáveis s e m são parâmetros da main()

Resposta: A

10. Crie um algoritmo que calcule o Índice de Massa Corporal (IMC) de uma pessoa, utilizando as informações de peso e altura. No final, imprima o valor do IMC e sua situação (abaixo, acima ou no peso correto).

include <stdio.h>
include <stdlib.h>

int SITUACAO (float VALOR1, float VALOR2);

int main(void)
{
Declarações
float PESO, ALTURA;
int OPCAO;
//Instruções
printf (“Informe o peso e a altura:”);
scanf (“%f%f”,&PESO,&ALTURA);
OPCAO = SITUACAO (PESO, ALTURA);
switch(OPCAO)
{
case 1:
printf(“Você está abaixo do peso.”);
break;
case 2:
printf(“Você está com o peso adequado para sua altura.”);
break;
case 3:
printf(“Você está acima do peso.”);
break;
case 4:
printf(“Você está obeso.”);
}
getch();
return(0);
}
Corpo da função
int SITUACAO (float VALOR1, float VALOR2)
{
float RESULTADO;
float IMC(float PESO1, float ALT);
RESULTADO = IMC(VALOR1,VALOR2);
if(RESULTADO <=18.5)
return(1);
else
if(RESULTADO <= 24.9)
return(2);
else
if(RESULTADO <= 29.9)
return(3);
else
return(4);
}

float IMC(float PESO1, float ALT)
{

float TOTAL;

TOTAL = PESO1 / (ALT * ALT);
return(TOTAL);
}

Ítalo Fernando Pontes de Carvalho

Mariana Regina Soares dos Santos

1) Como é utilizado o comando Return?
R: O comando return é utilizado para realizar o retorno da função; este pode ser utilizado em qualquer ponto da função que se deseje finalizar a sua execução e retornar o valor (se a função retornar algum valor) para quem a chamou

2) Explique o que é funções recursivas?
R: É o processo pelo qual uma função chama a si mesma repetidamente um numero finito de vezes. Este recurso é muito útil em alguns tipos de algoritmos chamados de algoritmos recursivos.

3) O que é funções de Biblioteca?
R: É um sub-programa (também chamado de rotina). Esta função recebe informações,
as processa e retorna outra informação.

4) Explique a diferença entre Funções de Biblioteca e Funções de Usuário.
R: Funções de biblioteca são funções escritas pelos fabricantes do compilador e já estão pré-compiladas, isto é, já estão escritas em código de máquina. Funções de usuário
são funções escritas pelo programador.

5) O que é a Modularização permite?
R: Permite que cada segmento seja escrito, testado e revisado individualmente sem alterar o funcionamento do programa como um todo.

6) Porque se utiliza Parâmetros ?
R: Os parâmetros se usam para mandar valores à função, com os quais ela trabalhará para realizar as ações. São os valores de entrada que recebem uma função.

7) Faça uma função que o usuário possa inserir a voltagem e a corrente e em seguida retorne-o a resistência.

#include<stdio.h>
#include<stdlib.h>
int resistencia(int v,int i){
    return(v/i);
}
int main(){
       int A,B;
       printf("Digite a Voltagem :\n");
       scanf("%i",&A);
       printf("Digite a corrente :\n");
       scanf("%i",&B);
       printf("A resistencia eh:%i\n",resistencia(A,B));
       system("pause");
}

8) Considere dois pontos no espaço.Faça uma função que usuário insira os seus valores e em seguida retorne a distância entre eles.
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
int distancia(int x1,int y1,int x2,int y2){
    return (sqrt(((x1-x2)*(x1-x2)+(y1-y2)*(y1-y2))));
}
int main(){
    int x1,x2,y1,y2;
    printf("Diga o valor dos pontos(x1,y1):\n");
    scanf("%i",&x1);
    scanf("%i",&y1);
    printf("Diga o valor dos pontos(x2,y2):\n");
    scanf("%i",&x2);
    scanf("%i",&y2);
    printf("A distancia eh:%i\n",distancia (x1,y1,x2,y2));
    system("pause");
}

9) Faça uma função que usuário informe o valor de um carro a uma loja de revendas de automóveis e em seguida retorne o valor de custo já em loja para o consumidor.
#include<stdio.h>
#include<stdlib.h>
float carro(float v){
      return((v*0.68)+v);
      }
int main(){
    float valor;
    printf("Digite o valor do carro:\n");
    scanf("%f",&valor);
    printf("O valor de venda do carro eh:%.0f\n",carro(valor));
    system("pause");
}

10) Considere duas revistas de vendas Avon e Shopping; utilizando função faça um algoritmo que der opção de escolha ao usuário permitindo a ele inserir o valor vendido por ele através da revista.Em seguida retorne o valor da porcentagens de vendas feita pela escolha do usuário, considerando ainda os seguintes dados:Avon 20%, Shopping 10%.
#include<stdio.h>
#include<stdlib.h>
float avon(float A){
      return(A*0.2);
}
float shopping(float A){
      return(A*0.1);
}
int main(){
    float num,op;
    printf("Digite o valor que voce vendeu:\n");
    scanf("%f",&num);
    printf("escolha:\n,1-Avon:\n,2-Shopping:\n");
    scanf("%f",&op);
    if(op==1){
      printf("A porcentagem eh:%.0f\n",avon(num));
}   else{
       printf("A porcentagem eh: %.0f\n",shopping(num));
       }
       system("pause");
}

Caio César Barros Bezerra

Gilvandelma Marques de Lima

1) Qual a diferença entre parâmetros reais e formais? Dê exemplos.
R: Os parâmetros formais são as variáveis declaradas no cabeçalho das funções ou procedimentos, já os parâmetros reais são as variáveis ou constantes que aparecem nas chamadas às funções ou procedimentos.
Exemplos:
int MULT(int x, int y);
Na declaração da função “MULT”, as variáveis x e y são exemplos de parâmetros formais. Quando utilizamos a função passando os valores para realizar sua execução temos os parâmetros reais. Como em MULT(2,3). Os números 2 e 3 são exemplos de parâmetros reais.
2) Faça um programa que leia duas strings com 10 posições, concatene-as num vetor e exiba a string resultante.

#include<stdio.h>
#include<string.h>
 
int main(void){
    char string1[10], string2[10], concatenacao[20];
 
    printf("\nPrograma para concatenar duas strings de tamanho fixo com 10 posicoes");
    printf("\nDigite a primeira string: ");
    scanf("%s", string1);
    printf("\nDigite a segunda string: ");
    scanf("%s", string2);
 
    strcpy(concatenacao,string1);
 
    strcat(concatenacao, string2);
    printf("\n\n %s\n", concatenacao);
 
    system("PAUSE");
    return 0;
}

3) Descreva sucintamente os principais especificadores de formato usados com as funções de entrada e saída para ler/escrever corretamente as variáveis?

%d Inteiro
%o Octal
%c Caracter
%s String
%f Float
%lf Long float ou Double
%x Hexadecimal

4) Faça um programa que imprima uma matriz triangular superior preenchida com 1’s na parte superior e 0’s na inferior.

#include <stdio.h>
 
int main(void){
    int i, j, matriz[10][10];
 
    for (i=0; i<10; i++){
       for (j=0; j<10; j++){
            if (i<=j)
                matriz[i][j]=1;
            else
                matriz[i][j]=0;
 
            printf("%d ", matriz[i][j]);
        }
        printf("\n"); 
      }     
 
    system("PAUSE");
    return 0;
}

5) Faça um algoritmo que diga se é impar ou par.
#include<stdio.h>
 
int main () {
    int a;
 
    printf("Digite um numero inteiro qualquer: ");
    scanf ("%d",&a);
 
    if(a%2){
          printf("numero impar\n");
    }else{
          printf("numero par\n");
    }
    system ("pause");
    return 0;
}

6) Faça um algoritmo que leia uma string e diga quantas letras foi digitada.
#include<stdio.h>
int main () {
  char nome[100];
  int i;
 
  printf ("\nPrograma para calcular o comprimento de uma string ");
  printf ("\nEntre com a string: ");
  scanf("%s", nome);
 
  for (i=0; nome[i]!='\0'; i++);   
  printf("\n\nA stringo eh de: %d\n", i);        
 
  system ("pause");
}

7) Crie uma função que realize o preenchimento de uma matriz passada como argumento.
void F_preenche_matriz(int matriz[])
{
    int i;
    for(i=0; i<MAX; i++){
        printf("M[%d]: ", i+1);
        scanf("%d", &matriz[i]);
    }
}

8) Faça um algoritmo que use do-while e switch.
#include<stdio.h>
int main() {
    int i;
    do {
        printf("\nescolha um Dia;\n");
        printf("\t (1)... Domingo:\n");
        printf("\t (2)... Segunda:\n");
        printf("\t (3)... Terca\n");
        printf("\t (4)... Quarta\n");
        printf("\t (5)... Quinta\n");
        printf("\t (6)... Sexta\n");
        printf("\t (7)... Sabado\n");
        printf("Opcao: ");
        scanf("%d", &i);
        }while ((i<1)||(i>7));
 
    switch(i){
             case 1:
                  printf("\t (1)voce esta com sono\n");
                  break;
             case 2:
                  printf("\t (2)voce esta feliz:\n");
                  break;
             case 3:
                  printf("\t (3)voce esta triste:\n");
                  break;
             case 4:
                  printf("\t (4)voce esta comesando a ficar feliz:\n");
                  break;
             case 5:
                  printf("\t (5) ta chegando o fim de semana:\n");
                  break;
             case 6:
                  printf("\t (6)fim de semana chegou:\n");
                  break;
             case 7:
                  printf("\t (7)dia de tormar uma cerveja:\n");
                  break;
             default:
                     printf("\tnao reconhece o dia\n");
    }
 
    system ("pause");
}

9) O que são vetores unidimensionais e multidimensionais?
R: Os vetores unidimensionais são variáveis compostas homogêneas que se caracterizam pelo agrupamento linear de um conjunto de dados do mesmo tipo. Já os multidimensionais são como uma composição dos unidimensionais, ou seja, tem-se uma variável composta homogênea resultante do agrupamento em múltiplas dimensões de um conjunto de dados do mesmo tipo, por exemplo, uma matriz bidimensional.
10) Crie um programa que receba a idade em anos de uma pessoa, converta-a em dias e segundos, e exiba o resultado da conversão.
#include <stdio.h>
 
int main()
{
    int idade, dias;
    long int segundos;
    printf("\nPrograma que recebe a idade em anos e a retorna convertida em dias e segundos");
    printf ("\nEntre com sua idade:");
    scanf("%d", &idade);
 
    dias = idade*364;
    segundos = idade*31449600;
    printf ("\nSua idade em dias: %d", dias);
    printf ("\nSua idade em segundos: %d", segundos);
 
    system("PAUSE");
    return 0;
}

Geronaidson Valentin

01) Receber um nome no teclado e imprimir quantas letras "A" tem o nome.
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
#include<conio.h>
#include<string.h>
main()
{
char nome[30];
int x,t, ca=0;
printf("\n\t INFORME UM NOME : ");
gets(nome);
t=strlen(nome);
for (x=1; x <= t-1; x++)
{
if (nome[x] == 'a' || nome[x] == 'A')
ca++;
}
printf("\n O nome %s ",(nome));
printf("tem %d letra a.",ca);
printf("\n\n");
system("pause");
return(0);
}

02) Solicitar um nome e escrevê-lo de trás pra frente.

#include<stdio.h>
#include<stdlib.h>
#include<string.h>
main()
{
char nome[30]; int x,t;
printf("\n\n DIGITE UM NOME: ");
gets(nome);
t=strlen(nome);
for(x=t+1;x>=0;x++)
printf("%c",nome[x]);
printf("\n\n");
system("pause");
return(0);
}

03) Criar uma função que retorna o seguinte: A função recebe 3 valores float e retornar o
quadrado do 1º + a soma dos outros dois. Vai retornar o tipo inteiro.

#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<math.h>
float calcula (float x, float y, float z)
{
return (pow(x,2)+(y+z));
}
main()
{
printf("Resultado: %3.2f\n", calcula(2,3,4));
printf("\n\n");
system("pause");
return(0);
}

04) Descreva a função struct.
05) O que o programa a seguir faz? Qual é o resultado obtido se a string fornecida for: a) "Ah! Eu to maluco!"
#include <stdio.h>
#include <string.h>
#define TAM 20
void main () {
char s[TAM];
int c, i, j;

for (i=0, j=strlen(s)-1; i<j; i++, j—) {
c = s[i];
s[i] = s[j];
s[j] = c;
}
}
Solução: A função inverte a string fornecida. Assim, obtém-se: "Ah! Eu to maluco!" => "!oculam ot uE !hA"
- a função começa com i no início e j no final da string. A medida que i incrementa e j decrementa, o conteúdo das posições i e j é trocado, resultando na string invertida. –

06) Explique por que estar errado fazer
If (num=10)…
O que ira acontecer?
07) Qual o numero Maximo de caracteres que pode ser atribuído como nome de uma variável? 32
08) O que são constantes?
São valores que são mantidos fixos pelo compilador.
09) Quais são os três tipos de memória que um programa possui?
Memória de intrucoes, de dados e estatica
10) Quais as funções que não possuem valores? As funções Void.

Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-Share Alike 2.5 License.