国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C++ > 正文

C語言菜鳥基礎教程之求1到100的和

2020-05-23 13:45:08
字體:
來源:轉載
供稿:網友

題目:求1+2+3+……+98+99+100
(1)用數學方法求解
(2)編寫C語言程序求解

解:
(1)數學方法

S = 1+2+3+……+98+99+100 = (1+100) + (2+99) + (3+98) + …… + (49+52) + (50+51) = 101 * 50 = 5050

(2)C語言編程

#include <stdio.h>int main(){  int sum = 0; // 賦初值  for(int i = 1; i <= 100; i++)  {    sum = sum + i;  }    printf("total is %d/n", sum);}

運行結果:

total is 5050

分析:
(1)第一次循環

i = 1, sum = sum + i = 0 + 1 = 1,這里右邊的sum的值為初值0,將1賦給左邊的sum后,sum的最新值變成了1

(2)第二次循環

i = 2, sum = sum + i = 1 + 2 = 3, 這里右邊的sum的值已經通過上一步的計算變成了1。把3賦值給左邊的sum后,sum的最新值

就成了3

(3)第三次循環

i = 3, sum = sum + i = 3 + 3 = 6, 這里右邊的sum的值已經通過上一步的計算變成了3。把計算結果6賦值給左邊的sum后,sum的最新值就成了6

(4)第四次循環

i = 4, sum = sum + i = 6 + 4 = 10, 這里右邊的sum的值已經通過上一步的計算變成了6。把計算結果10賦值給左邊的sum后,sum的最新值就成了10

(5)……這樣執行一百次后,得到的結果為5050

新知識點:

sum = sum + i可以寫成sum += i,都是讓sum和i相加后,把新的值賦給sum。
以后編程盡量使用+=這種方式。
理由:C語言要通過編譯器編譯,在編譯器沒開啟優化的情況下,兩種寫法是完全等價的;編譯器開啟了優化后,+=的執行速度可能會快一點。(這個先有點印象即可,目前不用深入了解)

作業:
(1)調試上面的程序。每次運行到右大括號時,把鼠標懸在sum上面,觀察sum的值。
上面的程序會循環100次,調試的時候,循環10次左右就可以step out了。

(2)
把sum = sum + i改成sum += i,運行結果

#include <stdio.h>int main(){  int sum = 0; // 賦初值  for(int i = 1; i <= 100; i++)  {    sum += i;  }    printf("total is %d/n", sum);}

(3)在紙上默寫這個程序.


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 鸡东县| 梅河口市| 汤阴县| 太白县| 宝坻区| 琼海市| 舟曲县| 马尔康县| 石家庄市| 襄樊市| 汝城县| 宜宾县| 嘉峪关市| 轮台县| 房山区| 晋江市| 永登县| 六枝特区| 阳春市| 朝阳县| 南江县| 蓬莱市| 阳春市| 紫云| 江陵县| 华亭县| 辽阳市| 若尔盖县| 嘉峪关市| 永平县| 广灵县| 莲花县| 孟津县| 民县| 台前县| 苗栗市| 新密市| 青龙| 大英县| 土默特右旗| 紫金县|