C語言循環(huán)、一維數(shù)組課件_第1頁
C語言循環(huán)、一維數(shù)組課件_第2頁
C語言循環(huán)、一維數(shù)組課件_第3頁
C語言循環(huán)、一維數(shù)組課件_第4頁
C語言循環(huán)、一維數(shù)組課件_第5頁
已閱讀5頁,還剩23頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

第四章循環(huán)結(jié)構(gòu)

第五章一維數(shù)組循環(huán)語句

問題:

打印整數(shù)1~10

打印整數(shù)1~100

打印整數(shù)1~nprintf(“12345678910”);printf(“%d”,1);printf(“%d”,2);…

…printf(“%d”,10);i=1;printf(“%d”,i);printf(“%d”,i);…

…printf(“%d”,i);i++;#include<stdio.h>main(){inti;

i=1;while(i<=10){printf("%d",i);i++;}}i++;i++;一、while語句while(條件)語句;條件語句;0非0i=1;while(i<=10){printf(“%d”,i);i++;}循環(huán)條件循環(huán)體循環(huán)不變式循環(huán)條件改變式ctrl+break可以是任意表達式:非0:真

0:假一條語句。如果需要寫多條語句,必須在這多條語句外加{},構(gòu)成復(fù)合語句二、do/while語句do

語句;while(條件);條件語句0非0i=1;do{printf("%d",i);i++;}while(i<=10);可以是任意表達式:非0:真

0:假一條語句。如果需要寫多條語句,必須在這多條語句外加{},構(gòu)成復(fù)合語句while和do/while的比較條件語句0非0條件語句0非0循環(huán)次數(shù):無數(shù)次或者0次無數(shù)次或者至少要1次

到最后一項的絕對值小于等于10-5(系統(tǒng)有求絕對值的庫函數(shù)fabs)

循環(huán)不變式:sum=sum+flag*1/n;循環(huán)條件改變式:n=n+2;循環(huán)條件:fabs(flag*1/n)>1E-5例:利用格里高利公式求圓周率∏(用pi表示)

書上寫的是1.0,寫1可以嗎,為什么?#include<math.h>?三、for語句for(exp1;exp2;exp3)

語句exp3語句exp1exp20非0循環(huán)條件循環(huán)體while(條件)語句for(exp1;exp2;exp3)

語句while和for的關(guān)系sum=0;i=1;while(i<=10){sum=sum+i;i++;}sum=0;for(i=1;i<=10;i++)sum=sum+i;exp1;while(exp2){

語句;

exp3;}break語句作用:1.跳出switch語句2.

跳出當(dāng)層循環(huán)for(i=0;i<5;i++){c=getchar();if(c==’\n’)break;putchar(c);}輸入:abc↙123↙輸出:abc例:輸入m,判斷m是否為素數(shù)(質(zhì)數(shù))

分析:除了1和m,不能被其他數(shù)整除

m%2%3%4%5……%(m-1)

n=m-1;for(i=2;i<=n;i++)if(m%i==0)break;if(i>n)printf(“%d”,m);elseprintf(“no\n”);例:輸入m,判斷m是否為素數(shù)(質(zhì)數(shù))

分析:除了1和m,不能被其他數(shù)整除

m%2%3%4%5……%(m-1)

n=m-1;for(i=2;i<=n;i++)if(m%i==0)break;if(i>n)printf(“%d”,m);elseprintf(“no\n”);sqrt(m)多重循環(huán)(循環(huán)嵌套)注:循環(huán)嵌套均是大循環(huán)嵌套小循環(huán)絕對不允許循環(huán)體交叉

break只能跳出當(dāng)層while(條件)語句;do

語句;while(條件);for(exp1;exp2;exp3)

語句;輸出以下圖形21個空格□□□□□□□□□□□□□□□□□□□□□1□□□□□□□□□□□□□□□□□□□2□□□2□□□□□□□□□□□□□□□□□3□□□3□□□3□□□□□□□□□□□□□□□4□□□4□□□4□□□4□□□□□□□□□□□□□5□□□5□□□5□□□5□□□5#include<stdio.h>main(){inti,j,k;i=1;while(i<=5){for(j=1;j<=20-2*i;j++)printf("");for(k=1;k<=i;k++)printf("%4d",i);printf("\n");i++;}}數(shù)組

一維數(shù)組二維數(shù)組字符數(shù)組數(shù)組的概念問題:輸入3個整數(shù)后再將它們按輸入順序的相反順序輸出

int

a1、a2、a3

輸入300個整數(shù)后再將它們按輸入順序的相反順序輸出

ints[300];s[0]、s[1]……s[299]

數(shù)組:相同類型數(shù)據(jù)的有序集合;在內(nèi)存中連續(xù)存放優(yōu)點:表述簡潔,可讀性高;便于使用循環(huán)結(jié)構(gòu)特點:數(shù)組的大小必須是確定的;數(shù)組中元素的類型必須相同s01299……s[0]s[1]s[299]一維數(shù)組元素的引用數(shù)組元素的引用:數(shù)組名[下標(biāo)]下標(biāo):整型表達式取值范圍:[0,數(shù)組長度-1]例:inta[10];

a[0]、a[1]、……、a[9]下標(biāo)不要越界,不能使用a[10]注:數(shù)組元素的使用方法與同類型的變量相同一維數(shù)組元素的引用例:設(shè)inta[10];,則給數(shù)組元素a[0]賦值1如何實現(xiàn),輸出數(shù)組元素a[0]的值如何實現(xiàn)呢?給每個數(shù)組元素輸入值如何實現(xiàn),輸出所有數(shù)組元素的值如何實現(xiàn)呢?P109注:數(shù)組元素的使用方法與同類型的變量相同在定義數(shù)組時給初值

inta[5]={1,2,3,4,5};inta[]={1,2,3,4,5};inta[5]={1,2};inta[5];

inta[5]={1,2,3,4,5,6};一維數(shù)組的初始化a[3]的值?#include<stdio.h>voidmain(){ intf[20],sum=0,i; f[0]=1; f[1]=1; for(i=2;i<20;i++) f[i]=f[i-1]+f[i-2]; for(i=0;i<20;i++) { printf("%4d",f[i]); if((i+1)%5==0)printf("\n"); sum=sum+f[i]; } printf("sum=%d",sum);}intf[20]={1,1},sum=0,i;將數(shù)組a中存放的10個數(shù)按顛倒的順序重新存放main(){inta[10]={26,21,29,85,76,25,30,50,44,60};inti,j,temp;i=0;j=9;while(i<j){temp=a[i];a[i]=a[j];a[j]=temp;i++;j--;}for(i=0;i<10;i++)printf("%4d",a[i]);printf("\n");}運行結(jié)果如下:

60445030257685292126

ij#defineN5main(){inta[N+1],i,j,p,temp;printf("Input%dnumbers:\n",N);for(i=1;i<=N;i++)scanf("%d",&a[i]);:

for(i=1;i<=N-1;i++){p=i;for(j=i+1;j<=N;j++)if(a[p]>a[j])p=j;if(p!=i){temp=a[p];a[p]=a[i]

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論