2 00:00:00,000 --> 00:00:02,470 >> Oratè 1: Se pou yo ekri yon pwogram ki envit itilizatè a pou non ak 3 00:00:02,470 --> 00:00:03,990 kay nan twa elèv yo. 4 00:00:03,990 --> 00:00:07,300 Men, olye ke sèlman enprime soti yo non ak kay nan ekran an, se pou yo 5 00:00:07,300 --> 00:00:09,660 olye pou konsève pou enfòmasyon ke yo gen kapasite. 6 00:00:09,660 --> 00:00:14,530 Nan lòt mo, se pou yo kreye, di, yon CSV ranpli, pou vigil valè separe, 7 00:00:14,530 --> 00:00:17,720 ki se aktyèlman jis yon dosye tèks ki pwogram tankou Excel oswa Numbers 8 00:00:17,720 --> 00:00:21,690 kapab louvri, epi efektivman delivre tout moun non ak kay pou tout tan se konsa ke 9 00:00:21,690 --> 00:00:23,220 nou ka revize yo pita. 10 00:00:23,220 --> 00:00:25,960 >> Pou fè sa, se pou yo premye pran yon gade nan kèk kòd boilerplate ke mwen te 11 00:00:25,960 --> 00:00:27,650 te kòmanse avèk deja. 12 00:00:27,650 --> 00:00:32,380 Avi premye ki nan mitan tèt yo moute tèt se kounye a estanda lib.h ki 13 00:00:32,380 --> 00:00:36,710 k ap pase nan gen kèk fonksyon ki gen rapò pote Mwen / O, D 'dosye ak pwodiksyon. 14 00:00:36,710 --> 00:00:39,560 Remake Mwen te tou te deklare yon konstan rele elèv yo - 15 00:00:39,560 --> 00:00:42,380 nan tout bouchon - ki gen valè se difisil kode kòm twa. 16 00:00:42,380 --> 00:00:45,820 Avi kounye a ke andedan nan prensipal mwen an pwogram, mwen deklare yon etalaj de 17 00:00:45,820 --> 00:00:50,270 gwosè twa lè l sèvi avèk ki konstan rele ELÈV YO chak nan manm ki gen se nan 18 00:00:50,270 --> 00:00:51,650 tape elèv yo. 19 00:00:51,650 --> 00:00:56,150 >> Sonje byen kounye a ke yon elèv nou pral defini tankou ke li gen yon non ak yon kay tou de 20 00:00:56,150 --> 00:01:00,410 ki se strings tankou pou chak sa a deklarasyon bay enstriksyon, dot h. 21 00:01:00,410 --> 00:01:04,680 Koulye a, tounen nan structs1.c, remake ke mwen gen yon pou bouk isit la ki nan ale nan 22 00:01:04,680 --> 00:01:06,750 repňte soti nan zewo jiska twa. 23 00:01:06,750 --> 00:01:10,020 Li ale nan vit m 'pou elèv yon an Non ak tout fanmi yon elèv 24 00:01:10,020 --> 00:01:12,310 ankò, li ankò e ankò. 25 00:01:12,310 --> 00:01:15,620 >> Lè sa a, nan pati anba nan pwogram sa a, remake ke mwen gen yon lòt pou bouk 26 00:01:15,620 --> 00:01:19,970 ki nan ale nan gratis elèv la on la Non ak kay elèv la on la nan yon 27 00:01:19,970 --> 00:01:21,570 Menm jan an tou konstwi bouk. 28 00:01:21,570 --> 00:01:24,480 Pou ka si, nou te ka konbine sa yo pasan nan sèlman yon sèl, men mwen te vle 29 00:01:24,480 --> 00:01:28,180 gen kèk segments distenk nan kòd pou dedomajman pou la nan diskisyon isit la. 30 00:01:28,180 --> 00:01:31,920 >> Koulye a, nan ant moun ki pou pasan, se pou yo aktyèlman gen yon lòt, ak yon sèl sa a nan 31 00:01:31,920 --> 00:01:35,210 objektif nan lavi se aktyèlman delivre tout nan sa yo non ak kay ki gen 32 00:01:35,210 --> 00:01:39,810 kounye a nan RAM ki gen kapasite nan fòm lan nan vigil valè separe. 33 00:01:39,810 --> 00:01:42,080 Pou fè sa, nou pral sèvi ak twa nouvo fonksyon - 34 00:01:42,080 --> 00:01:47,450 F louvri, F printf, ak F fèmen, ki louvri yon dosye, ekri ak lèt ​​detache nan yon dosye, ak 35 00:01:47,450 --> 00:01:48,440 fèmen yon dosye. 36 00:01:48,440 --> 00:01:49,690 Nou ka sèvi ak yo jan sa a. 37 00:01:49,690 --> 00:01:52,110 38 00:01:52,110 --> 00:01:58,240 >> DOSYE, nan tout bouchon, ki se yon ti jan nan yon kiryozite nan C, DOSYE vin fopen 39 00:01:58,240 --> 00:02:03,020 quote unquote e kounye a, yon non pou la pote, di, students.CSV, men mwen te kapab 40 00:02:03,020 --> 00:02:08,150 rele l 'anyen pi plis, vigil e kounye a, mwen se ale nan presize yon sèl w andedan 41 00:02:08,150 --> 00:02:09,390 nan quotes doub. 42 00:02:09,390 --> 00:02:13,290 W, kòm ou ta ka genyen dvine deja, vle di ke fopen ta dwe louvri sa a ranpli 43 00:02:13,290 --> 00:02:17,360 rele Students.CSV pou ekri pou ke nou ka aktyèlman sove kèk 44 00:02:17,360 --> 00:02:19,370 sa a li. 45 00:02:19,370 --> 00:02:23,080 >> Se pou yo pwochen chèk si dosye se pa egal a nil. 46 00:02:23,080 --> 00:02:25,860 Paske si li se, yon bagay gen pwobableman ale mal nan ka sa a nou 47 00:02:25,860 --> 00:02:28,340 pa ta dwe ale nan eseye ekri ak lèt ​​detache anyen nan li. 48 00:02:28,340 --> 00:02:33,400 Men, si li pa nil, lè sa a andedan nan la aparèy òtopedik Curly Mwen pral repňte 49 00:02:33,400 --> 00:02:38,030 soti nan mwen egal 0 sou jiska elèv yo, ak Mwen pral 50 00:02:38,030 --> 00:02:40,180 enkreman mwen sou chak iterasyon. 51 00:02:40,180 --> 00:02:45,750 Ak andedan sa a bouk, mwen pral jwenn fprintf konsa tankou ekri ak lèt ​​detache nan yon dosye - 52 00:02:45,750 --> 00:02:47,940 espesyalman yon sèl la Mwen deja louvri - 53 00:02:47,940 --> 00:02:54,650 yon kòd ki sanble ak sa a s%,% s antislach n fèmen quote. 54 00:02:54,650 --> 00:02:58,790 >> Epi, koulye a mwen vle ploge nan nan chak nan sa yo placeholders valè yo reyèl 55 00:02:58,790 --> 00:03:03,390 nan non yon elèv, epi yon kay lè l sèvi avèk operatè a dot. 56 00:03:03,390 --> 00:03:10,030 Elèv yo bracket i.name, elèv yo paren bracket i.house fèmen 57 00:03:10,030 --> 00:03:11,230 semi-kolon. 58 00:03:11,230 --> 00:03:16,180 Koulye a, pi ba a sa a pou bouk, mwen se tou senpleman ale nan rele fkloz nan dosye yo nan lòd 59 00:03:16,180 --> 00:03:18,520 finalman fèmen dosye a. 60 00:03:18,520 --> 00:03:21,360 >> Koulye a, lè m 'kouri pwogram sa a, mwen pa ta dwe aktyèlman wè anyen sou la 61 00:03:21,360 --> 00:03:25,010 ekran, men mwen ta dwe gen apre kouri pwogram sa a yon dosye rele 62 00:03:25,010 --> 00:03:29,130 Students.CSV nan anyè a menm ki Mwen kouri lòd la nan ki ta dwe 63 00:03:29,130 --> 00:03:32,480 genyen yon vigil separe lis valè. 64 00:03:32,480 --> 00:03:34,790 Ann pran yon gade. 65 00:03:34,790 --> 00:03:41,690 >> Fè strukt 1. / Elèv structs1 a non, kite a di David la, 66 00:03:41,690 --> 00:03:43,140 l ap viv nan Mather. 67 00:03:43,140 --> 00:03:46,890 Non Elèv la, se pou yo di, Lauren, li pral viv nan LEVERETT. 68 00:03:46,890 --> 00:03:50,800 Non Elèv la, se pou yo di, Rob, l ap viv nan Kirkland. 69 00:03:50,800 --> 00:03:54,050 Koulye a, ankò, jan yo espere, pa gen anyen parèt yo te ki te pase, men kite m ' 70 00:03:54,050 --> 00:03:58,790 ale pi devan nan èd memwa a bay lòd ak kalite g modifye students.CSV nan espere ke 71 00:03:58,790 --> 00:04:00,850 ki dosye tout bon egziste. 72 00:04:00,850 --> 00:04:07,010 >> Jdi students.CSV MAKE, ak tout bon, remake ke yon dosye ki gen piman 73 00:04:07,010 --> 00:04:11,320 tèks, men tèks ki separe pa vigil pou chak jaden, tout bon egziste. 74 00:04:11,320 --> 00:04:14,530 Men, si nou tout nou te lè l sèvi avèk, pa CS50 nan aparèy, men yon Mac plis abitye oswa 75 00:04:14,530 --> 00:04:18,080 PC, li vire soti ke nou te kapab tout bon louvri sa a ranpli CSV ak yon plis 76 00:04:18,080 --> 00:04:20,400 pwogram abitye tankou Excel oubyen nimewo yo. 77 00:04:20,400 --> 00:04:22,906