Anda di halaman 1dari 6

ESCOLA SECUNDRIA C/ 3 C.E.B.

DO FUNDO
CURSO PROFISSIONAL TCNICO DE GESTO E PROGRAMAO DE SISTEMAS

MDULO 4 SUBPROGRAMAS FICHA


DE

TRABALHO 9 - REVISES PARTE I

RESPONDE

S SEGUINTES QUESTES:

1. D uma noo para subprogramas na estruturao de um programa. Um subprograma um conjunto de instrues que realiza uma tarefa simples. Os subprogramas so tambm designados por sub-rotinas, procedimentos, mdulos ou funes. Os subprogramas so invocados pelo programa principal ou por outros subprogramas.

2. Como constituda uma funo, qual a sua nomenclatura.


Uma funo constituda por: Tipo do valor que retorna; Nome da funo; Lista dos parmetros que espera receber; Conjunto de instrues delimitado por {}.

3. Completa a seguinte imagem que representa o diagrama de sintaxe de uma funo

1- Tipo de funo 2- Parmetros de Entrada 3- Declarao de variveis

1-6

2008, LP

1. Qual a diferena entre as duas declaraes de funes:

1.1. Int primo (int n); 1.2. Void primo (int n, char c);
A primeira uma funo que ir retornar um nmero inteiro e tem como nome primo. Vai ter um argumento de entrada com o nome de n do tipo inteiro. A segunda uma funo que executa um conjunto de instrues com o nome de primo e dois argumentos de entrada n do tipo inteiro e c do tipo carater. 2. Indique se so Verdadeiras ou Falsas as seguintes afirmaes, corrigindo as falsas

2.1. As diferentes funo e a funo main podem ser invocadas dentro


de outra funo. F As diferentes funo podem ser invocadas dentro de outra funo, enquanto que a funo main pode apenas ser chamada uma nica vez.

2.2. Podemos dizer que a estrutura de uma funo identifica-se pelo


cabealho e corpo.V

2.3. Uma funo pode retornar um valor ou mais atravs da instruo


return;V

2.4. Cada funo tem que ter um nome nico, o qual serve para a sua
invocao algures no programa a que pertence. V

2.5. Uma funo deve realizar tarefas pretendidas pelo programador. F


Uma funo (como o seu nome indica) deve realizar UMA NICA TAREFA bem definida.

2.6. O nome de uma funo deve ser nico (no pode ser igual ao nome
de outra funo ou de uma varivel).V

PARTE II
1. Identifica os outputs das seguintes funes:

1.1. void linhaxx() {


int i; for (i=1 ; i<= 3 ; i++) putchar('*');
2-6 2012, LP

putchar('\n'); } Output ***

1.2. int anoCorrente();


main(){ int ano = anoCorrente(); printf(%d,ano); } int anoCorrente() { return(2000+12); } Output 2012

1.3. #include<stdio.h>
float area(float la) { return(la*la); } floatleitura() {float la; printf("Introduza a medida do lado do quadrado"); la=24; return(la);} voidmain() { float la,leitura(),area(); la=leitura(); printf("A rea do quadrado dela do %f %f",la,area(la)); } Output

3-6

2012, LP

Introduza a medida do lado do quadrado A rea do quadrado dela do 24 %576.0

Dadas as funes tiro e liro: void tiro(int x) { switch(x) { case 1: printf("\nEste teste e mesmo facil"); case 2: printf("\nAi de quem diga o contrario..."); return; case 3: printf("\nEstou no Tiro e x = %d",x); liro(x++); break; printf("\nVou sair do tiro"); default: printf("\nEntrei pelo default"); liro(x); } }

void liro(int x) { switch(x) { case 2: return; printf("\nOlarailarilolela"); break; case 3: printf("\nEu percebo HIMALAIAS de C"); break; printf("\nSou mesmo Bom!!!"); break; case 4: printf("\nNo percebo nada disto"); liro(2); return; default: printf("\nC estou eu mais uma vez"); tiro(x--); } } 2. Qual o output das seguintes chamadas.

2.1. tiro (1); 2.2. tiro (3); 2.3. liro (2); 2.4. liro (4);
4-6 2012, LP

3. Por palavras tuas, descreve o seguinte programa (qual o seu objectivo,


quantas funes utiliza, seu tipo e suas finalidades, o nmero de variveis variveis locais e globais e respetivo tipo): #include <stdio.h> void lenum(){ int x; printf(escreva um valor inteiro: ); scanf(%d,&x); return();} void escrevenum(){ printf(o valor de y=%f\n,y); return(); } int calc(int n){ int y; y=x+5.4; return(y); } int y; main(){ lenum(); xx=calc(y); escrevenum(); }

4. Assinala os erros das seguintes funes: 4.1. int Abs (int x){
if (x>=0) then return (int) x; else return (int)-x; }

4.2. int is_square (int x, y){


return x==y*y; }

4.3. isdigit (char c){


return (c>='0' && c<='9'); }

5-6

2012, LP

PARTE III
Realiza os seguintes programas em C 1. Faa um subprograma para verificar se um ano bissexto ou no. Utilize a regra: Um ano bissexto divisvel por 4, mas no por 100, ou ento se divisvel por 400. Exemplo: 1988 bissexto pois divisvel por 4 e no por 100; 2000 bissexto porque divisvel por 400. 2. Faa uma funo que recebe um nmero inteiro por parmetro e retorna verdadeiro se ele for par e falso se for mpar.

3. Faa um programa que tem duas variveis globais inicializadas com 0:


nmero e seu precentual (23% do valor do nmero). Faa um programa que l este nmero, envia como parmetros o nmero e seu percentual, e atravs de um procedimento calcula este novo percentual, e retorna alterado este percentual ao programa principal para depois imprimi-lo.

6-6

2012, LP

Anda mungkin juga menyukai