Sunteți pe pagina 1din 2

Fișă de lucru - Șiruri de caractere

1. Care va fi şirul s după executarea secvenţei alăturate în care variabila s memorează un şir de caractere iar variabila x un
caracter?
char s[9]="camarad", x=s[2];
s[2]=s[4];s[1]='r'; s[0]='t';
s[4]=s[1]; s[3]=x;
s[5]=s[7]; s[6]='x';
cout<<s;
2. Ce se va afişa în urma executării secvenţei de program următoare, dacă variabila s memorează şirul de caractere
militar?
cout<<strlen(s)<<' '<<strrchr(s,'i')-s;
3. Ştiind că în urma executării secvenţei de mai jos s-a afişat succesiunea de caractere PLANTON, care este şirul de caractere
memorat de variabila c?
i=0;
x=strlen(c);
while(i<x/2)
{
cout<<c[i]<<c[x-i-1];
i++;
}
cout<<c[i];
4. Variabila s poate memora un șir cu maximum 20 de caractere. Scrieţi ce se va afișa în urma executării secvenței de
instrucțiuni:
strcpy(s,"doa8ars");
s[3]='d'+2;strcpy(s,s+1);
strcpy(s+4,s+5);
cout<<s;
5. Precizați ce valoare va avea variabila s după executarea secvenței:
char s[]="74+96";
strcpy(s,strchr(s,'+')+2);
strcat(s,"58");
6. Ce se va afişa în urma executării secvenţei de program de mai jos dacă variabila s memorează cuvântul test, iar
variabila t memorează cuvântul noiembrie?
if(strcmp(s,t)>0) {strncat(s,t,3);cout<<s;}
else if(strcmp(s,t)<0) {strncat(t,s,3);cout<<t;}
else {strcat(s,t);cout<<s;}
7. Ce se va afişa în urma executării secvenţei de program de mai jos dacă variabila s memorează cuvântul bobocibal,
iar variabila t memorează cuvântul bo?
if (strstr(s,t))cout<<strstr(s,t)-s;
else cout<<s+strlen(t);
8. În secvenţa alăturată, variabilă a memeorează un şir cu cel mult 100 de caractere, iar i este de tip întreg. Completaţi
punctele de suspensie din secvenţă astfel încât aceasta să afişeze şirul de caractere *dm*t*r*
strcpy(a,"admitere");
for(i=0;i<strlen(a);i++)
if(………) cout………
else cout………;
9. Ce se afişează pe ecran în urma executării secvenţei de program alăturate, în care variabila s memorează un şir cu cel
mult 10 caractere, iar variabilele i şi j sunt de tip întreg?
int i,k;
char s1[23]="militareacademii",s2[23];
cout<<strlen(s1);
k=0;i=strlen(s1)-1;
while (k<i)
if (s1[k]==s1[i])
{
strcpy(s2,s1+i+1); strcpy(s1+i,s2); strcpy(s2,s1+k+1); strcpy(s1+k,s2);
i=i-2;
}
else
{
k=k+1;
i=i-1;
}
cout<<' '<<s1;
10. Indicați valoarea șirului de caractere str care se va obține în urma execuției secvenței următoare de instrucțiuni:
char ch = ' ';
char str[] = "Test La Informatica";
int stay = 1;
char vocs[] = "aeiou";
int i;
while (stay)
{
if (strchr(str, ch)) stay = 1;
else stay = 0;
for (i = 0; i < strlen(str); i++)
{
if (str[i] == ch)
{
str[i] = '-';
break;
}
}
for (i = 0; i < strlen(str); i++)
{
if (strchr(vocs, str[i]))
{
str[i] += 'A' - 'a';
break;
}
}
}
a. Test-La-Informatica b. TEst-LA-InfOrmatica c. Test LA InfOrmatica
d. test-la-informatica e. test la informatica f. TEST-LA-INFORMATICA
11. Fie şirul de caractere s:"academia fortelor aeriene optiunea ta este". Toate celelalte variabile sunt
întregi. Ce se afişează după executarea secvenţei de mai jos?
x=strlen(s);y=0;
for(i=0;i<x;i++)
if(s[i]!=' ')
if(s[i-1]=='e')y++;
if(s[x-1]=='e')y++;
cout<<y;
a. 1 b. 2 c. 7 d. 8
12. Indicați ce se va afișa după executarea secvenţei de program de mai jos.
char p[]="Admitere Academia", c[]="militara";
strcpy(p+(strchr(p,'i')+1-p),p+strlen(p)-1);
p[1]=p[1]-1;
strncpy(p+2,c,2);
cout<<p;
a. Acmia b. Acmmi c. Admia d. @dnmi
13. Indicați se va afișa pe ecran în urma execuției următoarei secvemţe de program dacă de la tastatură se citește cuvântul
avion.
char s[255];
cin.get(s,255);
int i = 0, n = strlen(s);
while (i<n)
if (!strchr("aeiou",s[i]))
{
for(int l=1; l<=2; l++)
{
n++;
for(int j=n; j>i; j--)
s[j] = s[j-1];
}
s[i+1]='c';
s[i+2]=s[i];
i=i+3;
}
else i++;
cout<<s;
a. avcvioncn b. acavcvicioconcn c. acaviciocon d. cacvciccocn

S-ar putea să vă placă și