pragma mark while練習(xí)1
pragma mark 概念
pragma mark 代碼
#include <stdio.h>
int main()
{
// 提示用戶輸入一個正整數(shù)n,計算1 + 2 + 3 + ....n 的和
// 1.寫代碼之前應(yīng)該先分析需求,分析完需求再開始寫代碼
// 2.一般情況下,在做企業(yè)級開發(fā)時,不會直接實現(xiàn)復(fù)雜的功能,而是先實現(xiàn)一個簡化的功能
/*
1 + 2 + 3 + 4 + 5
0+ 1
(0 +1) 1 + 2
(1 +2) 3 + 3
(3 +3) 6 + 4
(6 + 4) 10 + 5
規(guī)律 : 每一次都是用上一次的和 加上一個數(shù),而且加上的這個數(shù)就是一個遞增的數(shù)
*/
/*
// 1.定義變量保存上一次的和
int sum = 0;
// 2.定義變量保存遞增的數(shù)
int count = 1;
// 3.計算
*/
#pragma mark 底層思想實現(xiàn)
/*
// 0 + 1
sum = sum + count;
count ++;
// 1 + 2
sum = sum + count;
count ++;
// 3 + 3
sum = sum + count;
count ++;
// 6 + 4
sum = sum + count;
count ++;
// 10 + 5
sum = sum + count;
count ++;
*/
#pragma mark 基本思想實現(xiàn)
/*
// 1. 先寫一個while
// 2.找到需要循環(huán)執(zhí)行的代碼
// 3.確定約束條件(結(jié)束條件)
while (count <= 5) {
printf(" %i+ %i\n",sum,count);
sum = sum + count;
count ++;
}
*/
#pragma mark 復(fù)雜版實現(xiàn)(計算1+....+ n)
// // 1.提示用戶輸入一個整數(shù)
// printf("請輸入一個整數(shù)\n");
// // 2.定義變量保存用戶輸入的整數(shù)
// int number = -1;
// // 3.接收用戶輸入的整數(shù)
// scanf("%i",&number);
// 4.安全校驗
/*
if (number <= 0) {
// return 0; // 結(jié)束函數(shù)
// break;// 注意: break只能用在switch和循環(huán)結(jié)構(gòu),離開這兩個東西沒有任何效果
}
*/
// 2.定義變量保存用戶輸入的整數(shù)
int number = -1;
while (number <= 0) {
// 重復(fù)的提醒
// 1.提示用戶輸入一個整數(shù)
printf("請輸入一個整數(shù)\n");
// 3.接收用戶輸入的整數(shù)
scanf("%i",&number);
}
// 4.根據(jù)用戶輸入的整數(shù)計算結(jié)果
// 1. 先寫一個while
// 2.找到需要循環(huán)執(zhí)行的代碼
// 3.確定約束條件(結(jié)束條件)
int sum = 0;
int count = 1;
while (count <= number) {
// int sum = 0; // 注意,不能寫到這個地方,因為寫這里是一個局部變量,作用域是從定義的這一行開始,一直到循環(huán)體結(jié)束,每次進來都會重新定義一個
// int count = 1;
printf(" %i+ %i\n",sum,count);
// 思想:累加思想,通過循環(huán)來進行累加
sum = sum + count;
count ++;
}
// 5. 計算1 + 2 + 3 + ....n, 規(guī)律 : 每一次都是用上一次的和 加上一個數(shù),而且加上的這個數(shù)就是一個遞增的數(shù)
printf("sum = %i\n",sum);
printf("other");
return 0;
}
最后編輯于 :
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者