Informatică, întrebare adresată de Ana118965, 8 ani în urmă

Scrieţi un program în limbajul C/C++ care citeşte de la tastatură un singur şir format din cel mult 20 de caractere care reprezintă numele şi prenumele unei persoane. Între nume şi prenume se află un număr oarecare de caractere spaţiu (cel puţin unul). Atât numele cât şi prenumele sunt formate numai din litere ale alfabetului englez. Programul construieşte în memorie şi afişează pe ecran un al doilea şir de caractere, care să conţină prenumele, urmat de exact un spaţiu şi apoi numele din şirul citit iniţial.

Răspunsuri la întrebare

Răspuns de Daniel4761
3

#include <iostream>

#include <string.h>

using namespace std;

int main()

{

   char sir1[255], sir2[255];

   int i, j;

   cout<<"SIR:"; cin.get(sir1,255);

   j=strlen(sir1)-1;

   while(sir1[j]!=' ')

       j--;

   j++; i=0;

   while(j<strlen(sir1)){

       sir2[i]=sir1[j]; i++; j++;

   }

   sir2[i]=' '; i++;

   j=0;

   while(sir1[j]!=' '){

       sir2[i]=sir1[j]; i++; j++;

   }

   sir2[i]='\0';

   cout<<sir2;

   return 0;

}

Răspuns de Palmabil
1

#include<bits/stdc++.h>

using namespace std;

int main()

{

   int poz;

   string s,v="aeiouAEIOU";

   getline(cin,s);

   poz=s.find(' ');

   for(int i=poz+1;i<s.length();i++)

       if(s[i]!=' ')

           if(v.find(s[i])==-1)

           cout<<s[i];

           cout<<" ";

       for(int i=0;i<poz;i++)

           cout<<s[i];

}

Alte întrebări interesante