Anda di halaman 1dari 4

TRABAJO CON CADENAS

El tipo string o cadena no es un tipo primitivo en C y C++; pero esto no imposibilita su tratamiento pues las
cadenas son concebidas y tratadas como array de caracteres. La declaración básica se realiza con la
palabra reservada char seguida de un identificador válido y su dimensión.

El '\0' adiciona por defecto el carácter o marca de fin de cadena, después del ultimo

Para el lenguaje C los caracteres se trabajan con funciones como:

getc ( ) = leer un carácter desde la entrada estándar.


putc ( ) = enviar un carácter a la salida estándar.

Adicionalmente en la librería ctype y stdio existen más funciones para el manejo de caracteres. De forma
análoga el manejo de cadenas en C, se hace con:

gets ( ) = leer una cadena de caracteres desde la entrada estándar.


puts ( ) = enviar o escribir una cadena de caracteres hacia la salida estándar.

Para C++, las operaciones similares se realizan con funciones miembro definidas en las clases istream y
ostream.
cin.get ( ) = leer un carácter
cin.getline ( ) = leer una cadena de caracteres.

string.h
La librería proporciona un conjunto de funciones predeterminadas que facilitan la
manipulación de cadenas de caracteres.

COPIAR:
A[ ]: EL MUNDO ES ANCHO Y AJENO
Z[ ]: EL MUNDO ES ANCHO Y AJENO // strcpy (destino, origen)
P[ ]: EL MUNDO ES //strncpy ( destino, origen, cantidad)

CONCATENAR
A[ ]: EL MUNDO ES ANCHO Y AJENO
Z[ ]: Y POR ESO LA VIDA ES MARAVILLOSA
P[ ]: EL MUNDO ES ANCHO Y AJENO Y POR ESO LA VIDA ES MARAVILLOSA //strcat (destino, origen)
R[ ]: EL MUNDO ES ANCHO Y AJENO Y POR ESO LA VID // strncat (destino, origen, cantidad)

CONVERTIR:
El mundo es ancho y ajeno
EL MUNDO ES ANCHO Y AJENO // strupr (cadena)

EL MUNDO ES ANCHO Y AJENO


El mundo es ancho y ajeno // strlwr (cadena)

LONGITUD DE UNA CADENA


Cadena[40]: El mundo es ancho y ajeno
n= strlen(cadena)
n=25

strcpy (destino, origen) Copia una cadena en otra


strncpy ( destino, origen, cantidad) Copia una cadena en otra hasta la cantidad que se indique
strcat (destino, origen) Concatena la cadena origen en la cadena destino
strncat (destino, origen, cantidad) Concatena hasta la cantidad requerida
strupr (cadena) Convierte una cadena de minúsculas a mayúsculas
strlwr (cadena) Convierte cadena a minúsculas
strcmp (cadena1, cadena2) Compara cadenas
strchr (cadena, carácter) Busca la ocurrencia de un carácter en la cadena
strlen (cadena) Encuentra la longitud de la cadena
strlen, cuenta la cantidad de caracteres en un arreglo.
Ejemplo:

Char nombre [20] = “Julisa”;

n = strlen(nombre);

el valor de n=6

Ejemplos de declaración:

Char palabra [12]; // palabra guarda hasta 12 caracteres

Char lineal [80];

Char texto [256];

Char nombre [20] = “Julisa”;

Char curso [ ] = “ALGORITMOS”;

Char curso [ ] = { 'A', 'L', 'G', 'O', 'R', ' I', 'T', 'M', 'O', 'S' };
1. Realiza un programa que pida el ingreso de una frase y que
luego imprima la cantidad de palabras que contiene.
Programa en C++
#include<iostream.h>
#include<stdlib.h>
#include<string.h>
//#include<stdio.h>
int main(){
char cadena[40];
char blanco=' ';
int cont;
cout<<"Ingrese la cadena:"<<endl;
cin.getline(cadena,40);//leer
cont=1; Frase: EL MUNDO ES ANCHO Y AJENO
for(int i=0;i<40;i++){ i=0 i=1 i=2
if(cadena[i]==blanco)
cont=cont+1;}
//CONSISTENCIAR DOS ESPACIOS EN BLANCO
cout<<"El numero de palabras en la frase es :
"<<cont<<endl;
system("PAUSE");
return 0;}
Ingrese la cadena:
Diseñar y programar son actividades humanas.
El numero de palabras en la frase es : 6
Press any key to continue

2. Realiza un programa que reemplace todas las


ocurrencias de la letra ‘e’ por la letra ‘u’ en una frase
cualquiera.

3. Realiza un programa que pida el ingreso de una


oración y luego descomponga cada una de sus partes y
colóquelas en líneas sucesivas.

4. Elabore un programa que cuente el numero de caracteres de la cadena y su el


tamaño.

Programa en C++

#include<iostream.h>
#include<stdlib.h>
#include<string.h>
#include<stdio.h>
int main(){
char cadena[40];
int i,cont;
int n;
cout<<"Ingrese la cadena:"<<endl;
cin.getline(cadena,40);//leer
n=strlen(cadena);
cont=0;
char blanco=' ';
for(i=0;i<n;i++){
if(cadena[i]!=blanco)
cont=cont+1; }
cout<<"El numero de caracteres es :"<<cont<<endl;
cout<<"El tamaño de la cadena es :"<<n<<endl;
return 0;
system("PAUSE");
}

Ingrese la cadena:
Maria Elena Ruiz Rivera
El numero de caracteres es :20
El tamaño de la cadena es :23
Press any key to continue

5. Realiza un programa que lea una cadena y la convierta en mayúscula .

Programa en C++
#include<iostream.h>
#include<string.h>
#include<stdio.h>
#include<stdlib.h>
int main(){
char cadena[40];
int n,i;
cout<<"Ingrese texto: "<<endl;
cin.getline(cadena,40);
n=strlen(cadena);
for(i=0;i<n;i++)
if(cadena[i]!='\0'){
if ((cadena[i]>='a')&&(cadena[i]<='z')){
cadena[i]='A'+cadena[i]-'a'; }
}
cout<<"El nuevo texto es :" <<endl;
for(i=0;i<n;i++)
cout<<cadena[i];
cout<<endl;
return 0;
}

Ingrese texto:
nueva cadena de caracteres.
El nuevo texto es :
NUEVA CADENA DE CARACTERES.
Press any key to continue

PROYECTO FINAL DEL CURSO DE CIENCIAS DE LA COMPUTACION

FECHA: 24 DE ABRIL 2012

INVESTIGAR EL ALGORITMO GRASP

UN MES PARA ENTREGAR LA PRIMERA PARTE (TEORIA)

15 DIAS PARA COORDINAR AREA DONDE SE APLICARIA

UN MES ANTES DE TERMINAR LAS CLASES SE ENTREGARA EL PROYECTO (SISTEMAS)