Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[3.149.214.32] |
|
Сообщ.
#1
,
|
|
|
подскажите, почему функция не возвращает нужного значения:
char* trans( char* schislo ) { /* Maximum characters in 1st byte */ size_t s; div_t div_len; int q; char temp; double m; s=strlen(schislo); cout<<s<<endl; if (s!=1) { div_len = div(s, 2); cout<< div_len.rem<<endl; if (div_len.rem==0) { m=0.5*s; } else { m=0.5*s-0.5; } for(q=0; q<= m; q++) { temp = schislo[q]; schislo[q]=schislo[s-q]; schislo[s-q] =temp; } } return schislo; } void main(void) { char buffer[82] = { 80 }; /* Maximum characters in 1st byte */ char* z; cout<< "Vvedi chislo"<<endl; z= _cgets( buffer ); cout<<"z1="<<z<<endl; z=trans(z); puts(z); } |
Сообщ.
#2
,
|
|
|
проблема не со строками а с алгоритмом. имхо.
а для начала обьясни, что твой код должен делать. |
Сообщ.
#3
,
|
|||
|
если я правильно понял - код меняем число задом наперед типа было "1234" стало - "4321
|