Funkcja atoi

Odpowiedz Nowy wątek
2014-03-27 21:18

Rejestracja: 5 lat temu

Ostatnio: 3 lata temu

0

Witam

Mam następujące zadanie do zrobienia:
Napisz program który przyjmuje argumenty z wiersza poleceń(cmd) w postaci stringu i liczby całkowitej. Program ma wyświetlać podany string tyle razy ile wynosi wartość tej liczby. Należy zastosować funkcje atoi().

Zrobiłem coś takiego:

#include <stdio.h>
int main(int argc, char *argv[])
{
int licznik,numer;

gets(argv);

do
{
printf("%s \n",argv);

//printf("argc= %d", atoi(argv));

licznik++;
}while(licznik<atoi(argv));
return 0;
}  

I niby wszystko działa w kompilatorze, ale jak robie to przez konsole cmd to dalej nie wyswietla tyle razy ile podałem liczbę tylko wyświetla stringa raz.
Bardzo proszę o pomoc i wyjasnienie co robie nie tak.

Pozostało 580 znaków

2014-03-27 21:25

Rejestracja: 14 lat temu

Ostatnio: 3 dni temu

1
int main(int argc, char *argv[])
  {
   if(argc!=3) printf("Napis oraz liczba!\n");
   else
     {
      argc=atoi(argv[2]);
      while(argc--) printf("%s\n",argv[1]);
     }
   return 0;
  }

Wykonuję programy na zamówienie, pisać na Priv.
Asm/C/C++/Pascal/Delphi/Java/C#/PHP/JS oraz inne języki.

Pozostało 580 znaków

msm
2014-03-27 21:25
msm
Administrator

Rejestracja: 10 lat temu

Ostatnio: 23 godziny temu

1

Napisz program który przyjmuje argumenty z wiersza poleceń(cmd) w postaci stringu i liczby całkowitej.

gets(argv);
printf("%s \n",argv);

Huh? Skąd takie pomysły wziąłeś?

Chodzi o coś w rodzaju:?

// poza tym, trzeba sprawdzić czy faktycznie są te argumenty
for (int i = 0; i < atoi(argv[2]); i++) { // to atoi lepiej poza pętlą liczyć
    printf("%s", argv[1]);
}

(tylko musisz te dwa parametry przekazać).

Wywołanie:
./program string 2

edytowany 3x, ostatnio: msm, 2014-03-27 21:27
Z dokładnością co do sekundy ;P - _13th_Dragon 2014-03-27 21:27
Rekord na skalę 4p :P - msm 2014-03-27 21:41

Pozostało 580 znaków

2014-03-27 22:07

Rejestracja: 5 lat temu

Ostatnio: 3 lata temu

0

Dragon jak wpisze w konsoli cmd to dalej nie działa ;/

Pozostało 580 znaków

gośćabc
2014-03-27 22:36
gośćabc
0

Ty chbya w ogóle nie rozumiesz treści zadania :D cmd to konsola, nie masz tam wpisywać tego wyrazu

Pozostało 580 znaków

2014-03-27 22:47

Rejestracja: 14 lat temu

Ostatnio: 3 dni temu

0

Poczytaj co napisał @MSM na temat wywołania.


Wykonuję programy na zamówienie, pisać na Priv.
Asm/C/C++/Pascal/Delphi/Java/C#/PHP/JS oraz inne języki.

Pozostało 580 znaków

Odpowiedz

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0