Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 5 odgovora
  • 5.021 pregleda

Najnovija ↓

Problem sa ispisom char varijabke 11.09.2005. u 08:58 · pre 257 meseci #1
#include <stdio.h>
#include <stdlib.h>

int main(int argc, char *argv[])
{
int integer;
char slovo;
float decimalni;

printf("unesite jedan integer:\n");
scanf("%d",&integer);

printf("unesite jedno slovo\n");
scanf(" %c",&slovo);

printf("unesite jedan decimalni broj:\n");
scanf("%f",&decimalni);

printf("integer = %d\n",integer);
printf("slovo = %c\n",slovo);
printf("decimalni = %f\n",decimalni);

system("PAUSE");
return 0;

Zasto se u ovoj liniji mora staviti razmak prije %C

printf("unesite jedno slovo\n");
scanf(" %c",&slovo);
Potpis
if (argc > 1 && strcmp(argv[1], "-advice") == 0) {
printf("Don't Panic!n");
exit(42);
}
Re: Problem sa ispisom char varijabke 11.09.2005. u 11:19 · pre 257 meseci
izmenjeno 1 put, poslednji put D3adly 11.09.2005. u 11:20
  1. D3adly11.09.2005. u 11:20zapis iz teksta poruke
#2
Jer će ti inače taj char (razmak) učitatu u varijablu slovo.
Potpis
#include <D3adly.h>
Re: Problem sa ispisom char varijabke 11.09.2005. u 14:11 · pre 257 meseci #3
mada mi nije 100% jasno, ali hvala
Potpis
if (argc > 1 && strcmp(argv[1], "-advice") == 0) {
printf("Don't Panic!n");
exit(42);
}
Re: Problem sa ispisom char varijabke 11.09.2005. u 15:22 · pre 257 meseci #4
Problem je u tome sto kada uneses prvi integer ti lupis enter, pa na standardni ulaz imamo recimo

535'\n'

e sad prvi scanf procita samo broj i stane na znak '\n', pa kada pomocu drugog scanf-a citas karakter prvi karakter sa standardnog ulaza je '\n' odnosno taj enter koji si lupio. Stavljanjem razmaka pod navodnicima ti dajes do znanja funkciji scanf da preskoci sve bele znakove (tabove, razmake, '\n'...) i procita prvi karakter koji ne pripada belim znacima.
Za vise detalja u vezi formata scanf funkcije procitaj http://www.cplusplus.com/ref/cstdio/scanf.html.
Malo sam konfuzno objasnio ali nadam se da si shvatio.
Potpis
I drink to make other people interesting.
Re: Problem sa ispisom char varijabke 12.09.2005. u 14:40 · pre 257 meseci #5
Hvala puno
Potpis
if (argc > 1 && strcmp(argv[1], "-advice") == 0) {
printf("Don't Panic!n");
exit(42);
}
Re: Problem sa ispisom char varijabke 12.09.2005. u 14:51 · pre 257 meseci #6
Koliko se secam, pritisak na taster ENTER (valjda CR+LF ili samo LF), koji si
pritisnuo da bi prihvatio neki unos, moze imati problema pri nekoj sledecoj obradi
koji ove kontrolne karaktere uzima u obzir... Tada mozes koristiti, funkciju fflush(),
koju jos zovu i "gutač return-a".

Npr:

Code:

scanf( "%s", datoteka );
fflush( stdin );

Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme