Diskuze: Výpis pole znaků-výpis h za každým číslem
V předchozím kvízu, Online test znalostí C++, jsme si ověřili nabyté zkušenosti z kurzu.

Člen

Zobrazeno 6 zpráv z 6.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
V předchozím kvízu, Online test znalostí C++, jsme si ověřili nabyté zkušenosti z kurzu.
Nepochybně máš něco chybně v kódu.
Zde máš ukázku kódu a jednu z možností způsobu výpisu čísel z
řetězce pomocí for cyklu:
char str[] = "4536271809";
int i;
for (i = 0; str[i]; i++) putchar(str[i]);
Tady posílám tedy main
int main()
{
char *vstup=read();
for(int i=0;vstup[i]!='\0';i++)
{
printf("%ch",vstup[i]);
}
return 0;
}
A metodu read(). Scanf nepoužívám, protože je v zadání úlohy zakázaný.
char *read()
{
static char line[4];
int i;
if (fgets(line, sizeof(line), stdin)) {
if (1 == sscanf(line, "%d", &i)) {
return line;
}
}
}
Výstup je následující
123 vstup
1h2h3h výstup
EDIT:
při použití putchar() se h neobjevují, ale byl bych rád, pokud tomu někdo
přijde na kloub. Jinak kompiluji pomocí cygwin.
Nemaj
printf("%ch",vstup[i]);
Ale
printf("%c",vstup[i]);
Dobře, to by mě opravdu kontrolovat nenapadlo, nevím jak jsem na něco takového přišel.
Zobrazeno 6 zpráv z 6.