Sunteți pe pagina 1din 4

1)

char s[50]="test informatica";


char *p;
strtok(s, " ");
p=strtok(NULL," ");
strcpy(s,strcat(p,s));
cout<<s;
///Solutia informaticatest
2)
char s[100]="UPBautomatica",*p;
p=strchr(s,'-');
(p+1)[0]-=32; s[p-s]='\0';
p++; strcat(p,"-");
strcat(p,s); strcpy(s,p);
cout<<s;
///Solutia Automatica-UPB
3)
char s[11]="ABCDE",aux[11];
strcat(s+2,"ABCDE");
strcpy(aux, s+3);
strcpy(s,aux);
cout<<s[0]-s[2];
///Solutia 3

4)
typedef struct{char *p;}S;
int main()
{char p[10]="abcd";
S S[2];
for(int i=0;i<2;i++)S[i].p=p+i;
cout<<S[1].p[0];
}
///Solutia b
5)
int main()
{char s[100]="Poli-informatica",*p;
p=strchr(s,'-');
(p+1)[0]-=32;
s[p-s]='\0';
s[0]+=32;
strcat(p+1,"-");
strcat(p+1,s);
strcpy(s,p+1);
cout<<s;
}
///Solutia Informatica-poli
6)
char s[]="UN11DOI22TREI33";
int i=0;
while(s[i]!='\0')if(s[i]=='1'){s[i+1]='+';i+=2;}
else if(s[i]=='2'){s[i+1]='=';i+=2;}
else if(s[i]=='3'){strcpy(s+i,s+i+1);i++;}
else strcpy(s+i,s+i+1);
cout<<s;
///Solutia 1+3=3

7)
Se consideră un șir de caractere a care conține cel puțin o majusculă. Care dintre cele trei
secvențe S1), S2)și S3) de mai jos afișează prima literă mare din șir?
//S1
i = 0;
while (a[i]&&(a[i]<'A'||a[i]>'Z')) i++;
cout<< a[i];
//S2)
i=0;
do { i++;} while (a[i] &&!(a[i]>='A'&& a[i]<= 'Z'));
cout<<a[i];
//S3)
for(i=0;a[i]&& a[i]>='A'&&a[i]<='Z';i++)
cout<<a[i];
///Solutia S1
8)
char
s[15]="ABCDEFG",*p,x[15];
p=s;
p+=4;
strcpy(x,s+2);
strcat(x,p);
cout<<x;
///Solutia CDEFGEFG
9)
Se consideră următoarea secvență de cod. Identificați ce se va afișa dacă de la tastatură se vor
introduce, în ordine, șirurile de caractere student, carte și birou:
char a[256], b[256]; int i;
strcpy(b, "");
for(i=0;i<3;i++){cin>>a; strcat(b, a+i);}
cout<<b;
///Solutia studentarterou
10)
Variabila i memorează un număr întreg, iar s memorează un șir alcătuit din cel mult 20 de
caractere. Rezultatul obținut, în urma rulării secvenței de ma jos, este:
strcpy(s,"VAPOARE");
i=0;
while(i<strlen(s)-1)
{if(strchr("AEIOU",s[i])!=0){ s[i]=s[i]+1;strcpy(s+i+1,s+i+2);}
i++;}
cout<<s;
///Solutia VBPRE
11)
Se consideră următoarea secvenţă de program:
char c;
for(c='m';c<='r';c++)cout<<char(c- 5);
Şirul de caractere afișat în urma executării secvenței de program alăturate este:
a) 104 b) mnopqr c) abcdef d) 109 e) hijklm f) 104105106107108109
///Solutia e
12)
Se consideră următoarea secvenţă de program:
char s[101];int k, p, c;
cin.getline(s,101,’\n’);
k=0;p=strlen(s)-1;
while (k!=strlen(s)){ c=s[k]+s[p];s[k]=c-s[k];s[p]=c-s[k];k++;p--;}
cout<<s;

///Solutia pt sirul mere ramane mere

13)
Variabila s memorează un şir de caractere. Se consideră următoarea secvenţă de program:
char s[101], cuv[5]="test";
while (strstr(s,cuv))
strcpy(s+(strstr(s,cuv)-s),s+(strstr(s,cuv)-s+strlen(cuv)));
În urma executării secvenței de program alăturate se realizează:

14)
Se consideră următoarea secvenţă de program:
char s[101]="SebastianNicholas", p[50]="bytes to mb";
strcpy(s+ (strchr(s,'a')+1 -s),s+ strlen(s)-1);
s[3]++;
strncpy(s+3,p,2);
cout<<s<<endl;
În urma executării secvenței de program alăturate se afişează:
///Solutia Sebby
15)
Şirul de caractere s ce desemnează o propoziție cu exact 11 cuvinte formate doar din litere
mici, mari și separate prin câte un spațiu. Se consideră următoarea secvenţă de program:
Limbajul C++/C Limbajul Pascal
int n;
char s[100], *p, c[100];
strcpy(s,s+(strchr(s,' ')-s));
p=strtok(s," ");
while (p && n){ p=strtok(NULL," ");strcpy(c, p);n--;}
Pentru a memora în variabila c cuvântul din mijloc, valoarea atribuită variabilei n este:
///Solutia 4
16)
Șirul de caractere afișat după executarea instrucțiunilor de mai jos este:
char s[20]=”BUTONOMATICA”;
strcpy(s+5,s+6);
s[0]=s[0]-1;
strcpy(s+5,s+6);
cout<<s;
///Solutia AUTONATICA
17)
Programul de mai jos afișează numărul aparițiilor caracterului c în cuvântul s dacă punctelede
suspensie sunt înlocuite cu:
int main()
{char s[256], c, *p;
int nr;
cin.getline(s,255);cin>>c;
p = strchr(s, c);
nr = 0;
while (p != NULL){nr++;
...;
p = strchr(s, c);}
cout<<nr;}
a) strcpy(p,p+1); b) strcpy(p+1,p); c) strcat(s,p+1) ;
d) p++; e) strcat(s,p); f) p--;
///Solutia strcpy(p,p+1)
18)
Programul de mai jos afișează pe ecran textul Poli 2020 dacă punctele de suspensie sunt
înlocuite cu:
int main()
{char s[256], t[256];
strcpy(s,"Politehnica 2020");
...
strcpy(s + 4, t);
cout<<s;}
);
///Solutia strcpy(t,strchr(S,’’))

19)
După executarea următoarelor instrucțiuni se va afișa:
char a[20][20];
int i;
strcpy(a[1],"bacalaureat");
strcpy(a[2],"liceu");
strcpy(a[3],"examene");
strcpy(a[4],"politehnica");
for(i=1;i<=4;i++) cout<<a[i][2*i];
///Solutia cuei
20)
Știind că variabila i este de tip întreg și variabila a de tip șir de caractere reține cuvântul
politehnica, în urma executării instrucțiunilor se va afișa:
for(i=0;i<=7;i++)
if(a[i]<'n')a[i]='A'-'a'+a[i];
cout<<a;
///Solutia poLItEHnica

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