|
#include
int main(int argc, char* argv[]){
|
bet | 5/6 | Sana | 24.01.2024 | Hajmi | 19,21 Kb. | | #144268 |
Bog'liq Mushtariybonu dasturlash#include
int main(int argc, char* argv[]){
const int FISh_uzunligi=50;
string * Talaba;
char * Satr=(char*)malloc(FISh_uzunligi);
unsigned int talabalar_soni;
char son[3];
do {
cout<<"Talabalar sonini kiriting: ";
cin>>son; }
while((talabalar_soni=atoi(son))<=0);
Talaba =new string[talabalar_soni];
cin.ignore();
for(int i=0; i
cout<
cin.getline(Satr,50);
Talaba[i].assign(Satr); }
bool almashdi=true;
for(int i=0; i
almashdi=false;
for(int j=i; j
if(Talaba[j].compare(Talaba[j+1])>0) {
almashdi=true;
strcpy(Satr,Talaba[j].data());
Talaba[j].assign(Talaba[j+1]);
Talaba[j+1].assign(Satr); } }
cout<<"Alfavit bo'yicha tartiblangan ro'yxat:\n";
for(int i=0; i
cout<
delete [] Talaba; free(Satr); return 0; }
Programmada talabalar ro‘yxati string turidagi Talaba dinamik massiv ko‘rinishida e’lon qilingan va uning o‘lchami
Foydalanuvchi tomonidan kiritilgan talabar_soni bilan aniqlanadi. Talabalar sonini kiritishda nazorat qilinadi: klaviaturadan
satr o‘qiladi va u atoi() funksiyasi yordamida songa aylantiriladi. Agar hosil bo‘lgan son noldan katta son bo‘lmasa, sonni
kiritish jarayoni takrorlanadi. Talabalar soni aniq bo‘lgandan keyin har bir talabaning familiya, ismi va sharifi bitta satr
sifatida oqimdan
o‘qiladi. Keyin, string turida aniqlangan compare() funksiyasi yordamida massivdagi satr-laro‘zaro
solishtiriladi va mos o‘rindagi belgilar kodlarini o‘sishi bo‘yicha «pufakchali saralash» orqali tartiblanadi. Programma
oxirida hosil bo‘lgan massiv chop etiladi, hamda dinamik massivlar yo‘qotiladi.
Satr xossalarini aniqlash funksiyalari
String sinfida satr uzunligi, uning bo‘shligini yoki egallagan xotira hajmini aniqlaydigan funksiyalar bor:
|
| |