Cad é an difríocht idir% 2d agus% 02d i dteanga C? Cad é an loighic?


freagra 1:

Líonann% 2d i dteanga c an uimhir le spás. Ba chóir go mbeadh an uimhir níos lú ná 2 charachtar ar fhad:

int x = 5; printf ("% 2d", x);

Is é "5" an t-aschur. Tabhair faoi deara go bhfuil spás ann roimh 5.

Má dhéanann tú iarracht rud éigin mar seo a dhéanamh:

int x = 454; printf ("% 2d", x);

Is é 454 an t-aschur gan aon spásanna tosaigh.

Anois, déanaimis labhairt faoi% 02d:

Ciallaíonn an 0 go bhfuil an réimse padded le nialais, agus ciallaíonn an 2 go bhfuil dhá charachtar ar leithead sa réimse. Maidir le huimhreacha a bhfuil níos lú ná 2 charachtar acu, tá 0 stuáilte.

int x = 3; printf ("% 02d", x);

03 a bheidh san eagrán

Nuair a dhéanann tú iarracht rud éigin a dhéanamh mar:

int x = 345; printf ("% 02d", x);

Is é 345 an t-aschur agus ní chuirtear nialais tosaigh leis.

Anois táimid ag teacht chuig "% .6f":

Ciallaíonn sé seo nach n-aschur ach 6 dhigit tar éis na háite deachúla (timpeall suas le 6 dhigit):

snámhphointe x = 345.24678389; printf ("%. 6f", x);

Is é 345.246784 an t-aschur, toisc go bhfuil an líon ag an 7ú suíomh níos mó ná 5 agus dá bhrí sin tá 3 slánaithe go 4.

Tá súil agam go gcabhraíonn sé seo!

Clárú sona :)


freagra 2:

Ciall% 2d: - Má léann tú slánuimhir (% 2d), ní cheadaítear ach slánuimhir le suas le dhá dhigit. Má tá sraith de 50 carachtar á léamh agat, ba chóir duit% 50s a úsáid. Is é an smaoineamh céanna é.

uimhir int = 0; scanf ("% 2d", & uimhir); printf ("% d", uimhir);

Dá rithfí úsáideoir 21 don fheidhm scanf (), stórálfaí uimhir 21 san uimhir athraitheach. Má tá an t-úsáideoir beagán níos faide ná 21, i.e. H. 987, ní shábhálfar ach an chéad dá dhigit - 98.

Ciall% 02d: - Caithfidh tú% 02d a úsáid má tá nialais tosaigh le stuáil le dhá spás:

printf ("% 02d:% 02d:% 02d \ n", uair, nóiméad, dara);

Mar shampla, féach an clár iomlán seo a leanas:

#include int main (neamhní) {int hh = 3, mm = 1, ss = 4, dd = 159; printf ("Is é an t-am% 02d:% 02d:% 02d.% 06d \ n", hh, mm, ss, dd); filleadh 0; }

cad aschuir:

Is é an t-am 03: 01: 04.000159

freagra 3:

Ciall% 2d: - Má léann tú slánuimhir (% 2d), ní cheadaítear ach slánuimhir le suas le dhá dhigit. Má tá sraith de 50 carachtar á léamh agat, ba chóir duit% 50s a úsáid. Is é an smaoineamh céanna é.

uimhir int = 0; scanf ("% 2d", & uimhir); printf ("% d", uimhir);

Dá rithfí úsáideoir 21 don fheidhm scanf (), stórálfaí uimhir 21 san uimhir athraitheach. Má tá an t-úsáideoir beagán níos faide ná 21, i.e. H. 987, ní shábhálfar ach an chéad dá dhigit - 98.

Ciall% 02d: - Caithfidh tú% 02d a úsáid má tá nialais tosaigh le stuáil le dhá spás:

printf ("% 02d:% 02d:% 02d \ n", uair, nóiméad, dara);

Mar shampla, féach an clár iomlán seo a leanas:

#include int main (neamhní) {int hh = 3, mm = 1, ss = 4, dd = 159; printf ("Is é an t-am% 02d:% 02d:% 02d.% 06d \ n", hh, mm, ss, dd); filleadh 0; }

cad aschuir:

Is é an t-am 03: 01: 04.000159

freagra 4:

Ciall% 2d: - Má léann tú slánuimhir (% 2d), ní cheadaítear ach slánuimhir le suas le dhá dhigit. Má tá sraith de 50 carachtar á léamh agat, ba chóir duit% 50s a úsáid. Is é an smaoineamh céanna é.

uimhir int = 0; scanf ("% 2d", & uimhir); printf ("% d", uimhir);

Dá rithfí úsáideoir 21 don fheidhm scanf (), stórálfaí uimhir 21 san uimhir athraitheach. Má tá an t-úsáideoir beagán níos faide ná 21, i.e. H. 987, ní shábhálfar ach an chéad dá dhigit - 98.

Ciall% 02d: - Caithfidh tú% 02d a úsáid má tá nialais tosaigh le stuáil le dhá spás:

printf ("% 02d:% 02d:% 02d \ n", uair, nóiméad, dara);

Mar shampla, féach an clár iomlán seo a leanas:

#include int main (neamhní) {int hh = 3, mm = 1, ss = 4, dd = 159; printf ("Is é an t-am% 02d:% 02d:% 02d.% 06d \ n", hh, mm, ss, dd); filleadh 0; }

cad aschuir:

Is é an t-am 03: 01: 04.000159