giorgio37 Δημοσ. 29 Νοεμβρίου 2005 Δημοσ. 29 Νοεμβρίου 2005 Thelo na ftiakso ena programa pou na ftiaxnei mia sinartish pou antikathista kathe xaraktira c1 enos string s me ton xaraktira c2. Th sinartish prepei na thn exo kanei sosta alla exo problima me to kirios programma. ksekinao.. #include<stdio.h> main() { char s[20],c1='o',c2='e',p[20]; printf("Dose ena string:"); gets(s); printf("%s",s); p=replace(c1,c2); printf("To neo string einai %s",p); return 0; } void replace(char *s,char c1,char c2) { int i; for(i=0;s!='\0';i++) if(s==c1) s=c2; return; }Mipos exete kamia idea gia kapies alages sto programma? Oso to dinaton pio apla parakalo gia den exo mathi na xirizome kala th glosa akoma. euxaristo
powerfty Δημοσ. 29 Νοεμβρίου 2005 Δημοσ. 29 Νοεμβρίου 2005 Katarxas alli synartisi replace kaleis (pou den exeis ylopoihsei sto paron programma) kai alli synartisi exeis ylopoihsei. H replace san void function den epistrefei tipota opote to return einai peritto. Ston kwdika sti main prepei na allakseis tin grammi: p=replace(c1,c2); me tin grammi replace(s,c1,c2); kai synepws tin grammi: printf("To neo string einai %s",p); me tin grammi: printf("To neo string einai %s",s); Diladi anti gia s vale p. Epomenws stin dilwsi twn metavlitwn stin arxi h p[20] einai peritti. H replace kanei ti douleia pou thes kai apothikevei to apotelesma sto string s, diladi me auto to opoio tin kaleis. Episeis den mporeis etsi na kaleseis tin replace. Sti C kai sti C++ mporeis na kaleseis synartiseis pou eite tis exeis ylopoihsei se simeio parapanw tis klisis eite tis exeis orisei se ena tetoio simeio. Diladi etsi to programma den vriskei tin replace kai prepei eite na metafereis to kommati tis function panw apo ti main eite na tin oriseis panw apo ti main. Sygkekrimena ston katwthi kwdika diorthwsa ta lathi sou. #include <stdio.h> #include <stdlib.h> void replace(char*,char,char); int main(int argc, char *argv[]) { char s[20], c1='o', c2='e'; printf("Dose ena string:"); gets(s); printf("%s\n",s); replace(s,c1,c2); printf("To neo string einai %s\n",s); system("pause"); return 0; } void replace(char *s,char c1,char c2) { int i = 0; while(s != '\0') { if(s==c1) { s=c2; } ++i; } } An exeis kapoia alli aporia pes mou.
giorgio37 Δημοσ. 29 Νοεμβρίου 2005 Μέλος Δημοσ. 29 Νοεμβρίου 2005 euxaristo poli file. Me boithises poli
Προτεινόμενες αναρτήσεις
Αρχειοθετημένο
Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.