* [TUHS] A c program problem @ 2018-08-22 12:01 cc 2018-08-22 12:24 ` Donald ODona 2018-08-22 14:21 ` Dan Cross 0 siblings, 2 replies; 10+ messages in thread From: cc @ 2018-08-22 12:01 UTC (permalink / raw) To: tuhs [-- Attachment #1: Type: text/plain, Size: 488 bytes --] Hello everyone I had a problem compiling a piece of c code from the book. The result of running the book is 5050, but the compiler is 100. I don't know which is right, please help me to see which is wrong. Thank you very much! #include <stdio.h> int main(void) { int i, sum = 0; i = 1; while ( i <= 100) { sum = sum + 1; i++; } printf("%d\n", sum) return 0; } | | cc | | 邮箱:caipenghui_c@163.com | 签名由 网易邮箱大师 定制 [-- Attachment #2: Type: text/html, Size: 3456 bytes --] ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [TUHS] A c program problem 2018-08-22 12:01 [TUHS] A c program problem cc @ 2018-08-22 12:24 ` Donald ODona 2018-08-22 12:54 ` Mark Longridge 2018-08-22 14:21 ` Dan Cross 1 sibling, 1 reply; 10+ messages in thread From: Donald ODona @ 2018-08-22 12:24 UTC (permalink / raw) To: tuhs, caipenghui_c At 22 Aug 2018 12:18:08 +0000 (+00:00) from cc <caipenghui_c@163.com>: > Hello everyone > > I had a problem compiling a piece of c code from the book. The result of running the book is 5050, but the compiler is 100. I don't know which is right, please help me to see which is wrong. Thank you very much! > > #include <stdio.h> > > int main(void) > { > int i, sum = 0; > i = 1; > while ( i <= 100) { > sum = sum + 1; > i++; > } > printf("%d\n", sum) > return 0; > } > > > > > | | > cc > | > | > 邮箱:caipenghui_c@163.com > | > > 签名由 网易邮箱大师 定制 ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [TUHS] A c program problem 2018-08-22 12:24 ` Donald ODona @ 2018-08-22 12:54 ` Mark Longridge 0 siblings, 0 replies; 10+ messages in thread From: Mark Longridge @ 2018-08-22 12:54 UTC (permalink / raw) To: Donald ODona; +Cc: tuhs Looks like a typographical error. if you change the line: sum = sum + 1; to sum = sum + i; then you will get 5050. Also the line with printf should have a semi-colon at the end. On 8/22/18, Donald ODona <mutiny.mutiny@india.com> wrote: > > > At 22 Aug 2018 12:18:08 +0000 (+00:00) from cc <caipenghui_c@163.com>: >> Hello everyone >> >> I had a problem compiling a piece of c code from the book. The result of >> running the book is 5050, but the compiler is 100. I don't know which is >> right, please help me to see which is wrong. Thank you very much! >> >> #include <stdio.h> >> >> int main(void) >> { >> int i, sum = 0; >> i = 1; >> while ( i <= 100) { >> sum = sum + 1; >> i++; >> } >> printf("%d\n", sum) >> return 0; >> } >> >> >> >> >> | | >> cc >> | >> | >> 邮箱:caipenghui_c@163.com >> | >> >> 签名由 网易邮箱大师 定制 > ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [TUHS] A c program problem 2018-08-22 12:01 [TUHS] A c program problem cc 2018-08-22 12:24 ` Donald ODona @ 2018-08-22 14:21 ` Dan Cross 2018-08-22 14:26 ` cc 1 sibling, 1 reply; 10+ messages in thread From: Dan Cross @ 2018-08-22 14:21 UTC (permalink / raw) To: caipenghui_c; +Cc: TUHS main list [-- Attachment #1: Type: text/plain, Size: 1749 bytes --] Note, TUHS probably isn't the *best* forum to ask for help with basic C programs. :-) That said, I suspect you mis-transcribed the program and that the line, `sum = sum + 1;` should be `sum = sum + i;`, or more idiomatically, `sum += i;`. Indeed, the whole program could be written: #include <stdio.h> int main(void) { int i, sum = 0; for (i = 1; i <= 100; i++) sum += i; printf("%d\n", sum); return 0; } If you're using a C99 or later compiler, you can be slightly more succinct: #include <stdio.h> int main(void) { int sum = 0; for (int i = 1; i <= 100; i++) sum += i; printf("%d\n", sum); return 0; } Hope that helps! - Dan C. On Wed, Aug 22, 2018 at 8:17 AM cc <caipenghui_c@163.com> wrote: > Hello everyone > > I had a problem compiling a piece of c code from the book. The result of > running the book is 5050, but the compiler is 100. I don't know which is > right, please help me to see which is wrong. Thank you very much! > > #include <stdio.h> > > int main(void) > { > int i, sum = 0; > i = 1; > while ( i <= 100) { > sum = sum + 1; > i++; > } > printf("%d\n", sum) > return 0; > } > > > > cc > 邮箱:caipenghui_c@163.com > > <https://maas.mail.163.com/dashi-web-extend/html/proSignature.html?ftlId=1&name=cc&uid=caipenghui_c%40163.com&iconUrl=https%3A%2F%2Fmail-online.nosdn.127.net%2Fwzpmmc%2Fad31362036872a624ad455630205a987.jpg&items=%5B%22%E9%82%AE%E7%AE%B1%EF%BC%9Acaipenghui_c%40163.com%22%5D> > > 签名由 网易邮箱大师 <https://mail.163.com/dashi/dlpro.html?from=mail88> 定制 > [-- Attachment #2: Type: text/html, Size: 4661 bytes --] ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [TUHS] A c program problem 2018-08-22 14:21 ` Dan Cross @ 2018-08-22 14:26 ` cc 2018-08-22 14:29 ` cc 0 siblings, 1 reply; 10+ messages in thread From: cc @ 2018-08-22 14:26 UTC (permalink / raw) To: Dan Cross; +Cc: TUHS main list [-- Attachment #1: Type: text/plain, Size: 1616 bytes --] Sorry, I won't be sending it next time. Oh oh, maybe I forgot to add; . I typed the code on the book, and the result of running the book was 5050, but the compiler was 100. | | cc | | 邮箱:caipenghui_c@163.com | 签名由 网易邮箱大师 定制 On 08/22/2018 22:21, Dan Cross wrote: Note, TUHS probably isn't the *best* forum to ask for help with basic C programs. :-) That said, I suspect you mis-transcribed the program and that the line, `sum = sum + 1;` should be `sum = sum + i;`, or more idiomatically, `sum += i;`. Indeed, the whole program could be written: #include <stdio.h> int main(void) { int i, sum = 0; for (i = 1; i <= 100; i++) sum += i; printf("%d\n", sum); return 0; } If you're using a C99 or later compiler, you can be slightly more succinct: #include <stdio.h> int main(void) { int sum = 0; for (int i = 1; i <= 100; i++) sum += i; printf("%d\n", sum); return 0; } Hope that helps! - Dan C. On Wed, Aug 22, 2018 at 8:17 AM cc <caipenghui_c@163.com> wrote: Hello everyone I had a problem compiling a piece of c code from the book. The result of running the book is 5050, but the compiler is 100. I don't know which is right, please help me to see which is wrong. Thank you very much! #include <stdio.h> int main(void) { int i, sum = 0; i = 1; while ( i <= 100) { sum = sum + 1; i++; } printf("%d\n", sum) return 0; } | | cc | | 邮箱:caipenghui_c@163.com | 签名由 网易邮箱大师 定制 [-- Attachment #2: Type: text/html, Size: 8313 bytes --] ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [TUHS] A c program problem 2018-08-22 14:26 ` cc @ 2018-08-22 14:29 ` cc 2018-08-22 14:32 ` Ralph Corderoy 2018-08-22 15:40 ` Toby Thain 0 siblings, 2 replies; 10+ messages in thread From: cc @ 2018-08-22 14:29 UTC (permalink / raw) To: Dan Cross; +Cc: TUHS main list [-- Attachment #1: Type: text/plain, Size: 1798 bytes --] I want to figure out if the book is right or the compiler is right. | | cc | | 邮箱:caipenghui_c@163.com | 签名由 网易邮箱大师 定制 On 08/22/2018 22:26, cc wrote: Sorry, I won't be sending it next time. Oh oh, maybe I forgot to add; . I typed the code on the book, and the result of running the book was 5050, but the compiler was 100. | | cc | | 邮箱:caipenghui_c@163.com | 签名由 网易邮箱大师 定制 On 08/22/2018 22:21, Dan Cross wrote: Note, TUHS probably isn't the *best* forum to ask for help with basic C programs. :-) That said, I suspect you mis-transcribed the program and that the line, `sum = sum + 1;` should be `sum = sum + i;`, or more idiomatically, `sum += i;`. Indeed, the whole program could be written: #include <stdio.h> int main(void) { int i, sum = 0; for (i = 1; i <= 100; i++) sum += i; printf("%d\n", sum); return 0; } If you're using a C99 or later compiler, you can be slightly more succinct: #include <stdio.h> int main(void) { int sum = 0; for (int i = 1; i <= 100; i++) sum += i; printf("%d\n", sum); return 0; } Hope that helps! - Dan C. On Wed, Aug 22, 2018 at 8:17 AM cc <caipenghui_c@163.com> wrote: Hello everyone I had a problem compiling a piece of c code from the book. The result of running the book is 5050, but the compiler is 100. I don't know which is right, please help me to see which is wrong. Thank you very much! #include <stdio.h> int main(void) { int i, sum = 0; i = 1; while ( i <= 100) { sum = sum + 1; i++; } printf("%d\n", sum) return 0; } | | cc | | 邮箱:caipenghui_c@163.com | 签名由 网易邮箱大师 定制 [-- Attachment #2: Type: text/html, Size: 11825 bytes --] ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [TUHS] A c program problem 2018-08-22 14:29 ` cc @ 2018-08-22 14:32 ` Ralph Corderoy 2018-08-22 14:34 ` cc 2018-08-22 15:40 ` Toby Thain 1 sibling, 1 reply; 10+ messages in thread From: Ralph Corderoy @ 2018-08-22 14:32 UTC (permalink / raw) To: cc; +Cc: TUHS main list > I want to figure out if the book is right or the compiler is right. 5050 is the right answer. It's the 100th triangular number. https://en.wikipedia.org/wiki/Triangular_number Please let this off-topic thread die. -- Cheers, Ralph. https://plus.google.com/+RalphCorderoy ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [TUHS] A c program problem 2018-08-22 14:32 ` Ralph Corderoy @ 2018-08-22 14:34 ` cc 0 siblings, 0 replies; 10+ messages in thread From: cc @ 2018-08-22 14:34 UTC (permalink / raw) To: Ralph Corderoy; +Cc: TUHS main list [-- Attachment #1: Type: text/plain, Size: 417 bytes --] Ok, That you. | | cc | | 邮箱:caipenghui_c@163.com | 签名由 网易邮箱大师 定制 On 08/22/2018 22:32, Ralph Corderoy wrote: > I want to figure out if the book is right or the compiler is right. 5050 is the right answer. It's the 100th triangular number. https://en.wikipedia.org/wiki/Triangular_number Please let this off-topic thread die. -- Cheers, Ralph. https://plus.google.com/+RalphCorderoy [-- Attachment #2: Type: text/html, Size: 3979 bytes --] ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [TUHS] A c program problem 2018-08-22 14:29 ` cc 2018-08-22 14:32 ` Ralph Corderoy @ 2018-08-22 15:40 ` Toby Thain 2018-08-22 15:46 ` Caipenghui 1 sibling, 1 reply; 10+ messages in thread From: Toby Thain @ 2018-08-22 15:40 UTC (permalink / raw) To: tuhs On 2018-08-22 10:29 AM, cc wrote: > I want to figure out if the book is right or the compiler is right. > > > cc Donald and Dan identified the issue in earlier replies. $ cc foo.c -o foo $ ./foo 5050 $ cat foo.c #include <stdio.h> int main(void) { int i, sum = 0; i = 1; while ( i <= 100) { sum = sum + i; i++; } printf("%d\n", sum); return 0; } --Toby ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [TUHS] A c program problem 2018-08-22 15:40 ` Toby Thain @ 2018-08-22 15:46 ` Caipenghui 0 siblings, 0 replies; 10+ messages in thread From: Caipenghui @ 2018-08-22 15:46 UTC (permalink / raw) To: tuhs, Toby Thain On August 22, 2018 11:40:18 PM GMT+08:00, Toby Thain <toby@telegraphics.com.au> wrote: > On 2018-08-22 10:29 AM, cc wrote: > > I want to figure out if the book is right or the compiler is right. > > > > > > cc > > > Donald and Dan identified the issue in earlier replies. > > $ cc foo.c -o foo > $ ./foo > 5050 > $ cat foo.c > #include <stdio.h> > int main(void) > { > int i, sum = 0; > i = 1; > while ( i <= 100) { > sum = sum + i; > i++; > } > printf("%d\n", sum); > return 0; > } > > --Toby Thank you very much for pointing this out, and I'm thrilled. Thank you for your kind help. ^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2018-08-22 15:47 UTC | newest] Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2018-08-22 12:01 [TUHS] A c program problem cc 2018-08-22 12:24 ` Donald ODona 2018-08-22 12:54 ` Mark Longridge 2018-08-22 14:21 ` Dan Cross 2018-08-22 14:26 ` cc 2018-08-22 14:29 ` cc 2018-08-22 14:32 ` Ralph Corderoy 2018-08-22 14:34 ` cc 2018-08-22 15:40 ` Toby Thain 2018-08-22 15:46 ` Caipenghui
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).