![《計(jì)算概論》期終復(fù)習(xí)_第1頁(yè)](http://file4.renrendoc.com/view/3cc3631f550dfc18a802bbc9215fec51/3cc3631f550dfc18a802bbc9215fec511.gif)
![《計(jì)算概論》期終復(fù)習(xí)_第2頁(yè)](http://file4.renrendoc.com/view/3cc3631f550dfc18a802bbc9215fec51/3cc3631f550dfc18a802bbc9215fec512.gif)
![《計(jì)算概論》期終復(fù)習(xí)_第3頁(yè)](http://file4.renrendoc.com/view/3cc3631f550dfc18a802bbc9215fec51/3cc3631f550dfc18a802bbc9215fec513.gif)
![《計(jì)算概論》期終復(fù)習(xí)_第4頁(yè)](http://file4.renrendoc.com/view/3cc3631f550dfc18a802bbc9215fec51/3cc3631f550dfc18a802bbc9215fec514.gif)
![《計(jì)算概論》期終復(fù)習(xí)_第5頁(yè)](http://file4.renrendoc.com/view/3cc3631f550dfc18a802bbc9215fec51/3cc3631f550dfc18a802bbc9215fec515.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
《計(jì)算概論》期終復(fù)習(xí)2010年12月28日知識(shí)點(diǎn)
總結(jié)預(yù)編譯聲明(宏定義、頭文件包含)自定義函數(shù)的聲明intmain(){……return0;}自定義函數(shù)的定義C程序的基本結(jié)構(gòu)主函數(shù)的定義考試時(shí)
可以復(fù)用
的
一個(gè)程序框架 #include<stdio.h> #include<math.h> #include<string.h> intmain(){
return0; }在此處插入你的代碼數(shù)據(jù)類型
的
輸入輸出
修飾符
%d int類型
%f float類型
%lf double類型
%c
字符類型
%s
字符串標(biāo)準(zhǔn)輸入輸出函數(shù)
的
使用標(biāo)準(zhǔn)輸出函數(shù):printf(…)標(biāo)準(zhǔn)輸入函數(shù):scanf(…)inta,b,c;scanf(“%d
%d”,&a,&b);c=a+b;printf(“%d
+%d=%d”,a,b,c);分支結(jié)構(gòu)分支結(jié)構(gòu)根據(jù)
分支判斷表達(dá)式
的
值(真或假),決定程序的后繼執(zhí)行路線單分支結(jié)構(gòu)
if(表達(dá)式){…//分支1
}任何類型為int,double或float的表達(dá)式如果
表達(dá)式
的
值
為
真,
則執(zhí)行
分支1
中的語(yǔ)句;否則,
跳過
分支1
中的語(yǔ)句。#include<stdio.h>intmain(){ inta; scanf(“%d”,&a); if(a<0){
a=-a; }
printf("%d\n",a);
return0;}接收用戶輸入的一個(gè)整數(shù),輸出這個(gè)整數(shù)的絕對(duì)值。雙分支結(jié)構(gòu)
if(表達(dá)式){…//分支1
}else{…//分支2
}如果
表達(dá)式
的
值
為
真,
則執(zhí)行
分支1
中的語(yǔ)句;否則,
執(zhí)行
分支2
中的語(yǔ)句。多分支結(jié)構(gòu)
if(表達(dá)式1){…//分支1
}elseif(表達(dá)式2){…//分支2
}……{ ……}elseif(表達(dá)式n){…//分支n}如果
表達(dá)式1
的
值
為
真,
則執(zhí)行
分支1
中的語(yǔ)句;否則如果
表達(dá)式2
的
值
為
真,
則執(zhí)行
分支2
中的語(yǔ)句;……否則如果表達(dá)式n
的
值
為
真,
則執(zhí)行
分支n
中的語(yǔ)句。#include<stdio.h>intmain(){
inta; scanf(“%d”,&a);
if(a<0){
a=-a; }elseif(a>0){
a=a/2; }
printf("%d\n",a);
return0;}#include<stdio.h>intmain(){
inta; scanf(“%d”,&a);
if(a<0){
a=-a; } if(a>0){
a=a/2; }
printf("%d\n",a); return0;}for循環(huán)語(yǔ)句
for(表達(dá)式1;表達(dá)式2
;表達(dá)式3){
循環(huán)體語(yǔ)句;}for語(yǔ)句
的
一般形式表達(dá)式1;表達(dá)式2循環(huán)體語(yǔ)句;表達(dá)式3;真假入口出口
#include<stdio.h> intmain(){
intsum,i;
for(i=1;i<=100;i++){ sum+=i; } printf(“%d”,sum);
return0; }for語(yǔ)句
示例數(shù)據(jù)輸入
的
一個(gè)模式數(shù)據(jù)輸入
的
一個(gè)模式關(guān)于輸入:
輸入的第一行
是一個(gè)整數(shù)n(n<100),
表示將要輸入的整數(shù)個(gè)數(shù);
其后n行,每行輸入一個(gè)整數(shù)。
#include<stdio.h> #defineN100 intmain(){
intn,data[N],i;
scanf(“%d”,&n);
for(i=0;i<n;i++){
scanf(“%d”,&(data[i])); ……
}
……
return0; }由兩個(gè)
整型操作數(shù)
構(gòu)成的
算術(shù)運(yùn)算表達(dá)式+ - * / %由兩個(gè)
整型操作數(shù)
構(gòu)成的算術(shù)運(yùn)算表達(dá)式假設(shè)a,b為兩個(gè)類型為int的表達(dá)式a+ba-ba*ba/b類型均為int11/33由兩個(gè)
整型操作數(shù)
構(gòu)成的算術(shù)運(yùn)算表達(dá)式:
取余運(yùn)算符號(hào)
%假設(shè)a,b為兩個(gè)類型為int的表達(dá)式a
%
b11%32括號(hào)的作用3+2*4(3+2)*4
在
不知道運(yùn)算符號(hào)優(yōu)先級(jí)別
時(shí),
請(qǐng)
使用括號(hào)
明確指定運(yùn)算的順序。a&&b||
ca&&
(b||
c)字符串
的
比較
和
賦值字符串
的
比較
不能使用
==str1
==
str2?“字符串比較”函數(shù)
intstrcmp(字符串A,字符串B);
當(dāng)
字符串A
和
字符串B相等時(shí),
該函數(shù)
返回0對(duì)于
字符串A
和
字符串B,
當(dāng)且僅當(dāng)
兩者的長(zhǎng)度相等,且
結(jié)尾字符‘\0’前的對(duì)應(yīng)字符均相等
時(shí)稱:這兩個(gè)字符串相等,字符串
的
賦值不能使用
=str1
=
str2;?“字符串復(fù)制”函數(shù)
strcpy(目標(biāo)字符串,源字符串);功能:把
源字符串
賦值給
目標(biāo)字符串intmain(){ charzfc_src[50],zfc_tgt[50]; gets(zfc_src); strcpy(zfc_tgt,zfc_src); printf(“%s\n”,zfc_tgt); return0;}關(guān)于
字符
的
一些問題如何
判斷:
一個(gè)字符變量的值
是否為空格字符?#include<stdio.h>intmain(){ charzf;
scanf(“%c”,&zf); if(zf==‘’){ printf(“thisisaspace\n”); }else{ printf(“thisisn’taspace\n”); }
return0;}如何
判斷:
一個(gè)字符變量的值
是否為小寫字母?小寫字母
包括:a,
b,
c,d,…,x,y,z#include<stdio.h>intmain(){ charzf;
scanf(“%c”,&zf); if(zf==‘a(chǎn)’||zf==‘b’||zf==‘c’||zf==‘d’||zf==‘e’
||zf==‘f’||zf==‘g’||zf==‘h’||zf==‘i’||zf==‘j’
||zf==‘k’||zf==‘l’||zf==‘m’||zf==‘n’||zf==‘o’
||zf==‘p’||zf==‘q’||zf==‘r’||zf==‘s’||zf==‘t’
||zf==‘u’||zf==‘v’||zf==‘w’||zf==‘x’||zf==‘y’
||zf==‘z’){ printf(“thisisalowerchar\n”); }else{ printf(“thisisn’talowerchar\n”); }
return0;}有沒有更好的方法?ASCII
編碼表字符a,b,…,z的
編碼值
順序遞增#include<stdio.h>intmain(){ charzf;
scanf(“%c”,&zf); if(zf==‘a(chǎn)’||zf==‘b’||zf==‘c’||zf==‘d’||zf==‘e’
||zf==‘f’||zf==‘g’||zf==‘h’||zf==‘i’||zf==‘j’
||zf==‘k’||zf==‘l’||zf==‘m’||zf==‘n’||zf==‘o’
||zf==‘p’||zf==‘q’||zf==‘r’||zf==‘s’||zf==‘t’
||zf==‘u’||zf==‘v’||zf==‘w’||zf==‘x’||zf==‘y’
||zf==‘z’){ printf(“thisisalowerchar\n”); }else{ printf(“thisisn’talowerchar\n”); }
return0;}if((zf>=‘a(chǎn)’)&&(zf<=‘z’)){#include<stdio.h>intmain(){ charzf;
scanf(“%c”,&zf); if((zf>=‘0’)&&(zf<=‘9’)){ printf(“thisisadigitalchar\n”); }else{ printf(“thisisn’tadigitalchar\n”); }
return0;}效果是什么?判斷一個(gè)字符變量的值
是不是
數(shù)字字符#include<stdio.h>intmain(){ charzf;
scanf(“%c”,&zf); if((zf>=‘0’)&&(zf<=‘9’)){ printf(“%d\n”,
); }else{ printf(“notadigitalchar\n”); }
return0;}完形填空,實(shí)現(xiàn)如下功能:當(dāng)用戶輸入一個(gè)數(shù)字字符后,輸出這個(gè)數(shù)字字符對(duì)應(yīng)的數(shù)字一個(gè)稍微復(fù)雜一點(diǎn)的題目題目描述:接收用戶輸入的一個(gè)字符串(不含空格,長(zhǎng)度<10)如果這個(gè)字符串是一串?dāng)?shù)字字符,則輸出這一串字符對(duì)應(yīng)的整數(shù)的值的一半;否則,輸出false示例輸入
示例輸出124 62123 611?3 false解題思路第1步:接收用戶輸入的一個(gè)字符串第2步:判斷是不是一個(gè)數(shù)字字符串第3步:如果是一個(gè)數(shù)字字符串,
則將其轉(zhuǎn)換為相應(yīng)的整數(shù),并除以2后輸出;
否則,
輸出false第1步:接收用戶輸入的一個(gè)字符串charstr[10];scanf(“%s”,str);第2步:判斷是不是一個(gè)數(shù)字字符串inti,len;intflag;//標(biāo)志位:0表示是數(shù)字字符串,否則不是flag=0;len=strlen(str);for(i=0;i<len;i++){ if(str[i]<‘0’||str[i]>‘9’){ flag=1; break;
}}第3步:如果是一個(gè)數(shù)字字符串,
則將其轉(zhuǎn)換為相應(yīng)的整數(shù),并除以2后輸出;
否則,
輸出falseintresult;if(flag==0){ ……printf(“%d”,result/2);}else{ printf(“false”);}在這里繼續(xù)插入代碼第3步:如果是一個(gè)數(shù)字字符串,
則將其轉(zhuǎn)換為相應(yīng)的整數(shù),并除以2后輸出;
否則,
輸出falseintresult;if(flag==0){ ……printf(“%d”,result/2);}else{ printf(“false”);}在這里繼續(xù)插入代碼for(i=0;i<len;i++){ result+=(str[len-1-i]–‘0’)*pow(10,i);}這個(gè)程序有錯(cuò)誤:result沒有賦初值。解題思路第1步:接收用戶輸入的一個(gè)包含空格的字符串第2步:將單詞從字符串中提取出來
并放到一個(gè)字符串?dāng)?shù)組中第3步:按照單詞的長(zhǎng)度對(duì)字符串排序第4步:輸出最長(zhǎng)和最短單詞第1步:接收用戶輸入的一個(gè)包含空格的字符串charsentence[1000];gets(“%s”,sentence);第2步:將單詞從字符串中提取出來
并放到一個(gè)字符串?dāng)?shù)組中chardanci[50][100];inti,k,n,len;k=0;n=0;len=strlen(sentence);for(i=0;i<len;i++){ if(str[i]!=‘’){ danci[n][k]=str[i]; k++; }else{
danci[n][k]=‘\0’; n++; k=0; }}danci[n][k]=‘\0’;danci里面有幾個(gè)單詞?n?n+1第3步:按照單詞的長(zhǎng)度對(duì)字符串排序第4步:輸出最長(zhǎng)和最短單詞請(qǐng)同學(xué)們課后自己動(dòng)手!解題思路第1步:接收用戶輸入的一個(gè)包含空格的字符串第2步:將單詞從字符串中提取出來
并放到一個(gè)字符串?dāng)?shù)組中第3步:按照要求對(duì)特定的單詞進(jìn)行替換第4步:按照順序輸出字符串?dāng)?shù)組中的單詞,
單詞之間以空格作為間隔。關(guān)于數(shù)列問題的程序示例問題1:
如何求一個(gè)數(shù)的平方根如何求一個(gè)數(shù)的平方根?doublesqrt(double);這個(gè)函數(shù)是如何實(shí)現(xiàn)的呢?如何求一個(gè)數(shù)的平方根?對(duì)于一個(gè)正數(shù)a,其平方根可以采用如下的迭代公式進(jìn)行計(jì)算:
x1=1
xn+1=(xn+a/xn)/2誤差要求:
當(dāng)|xn+1-xn|<0.00001時(shí),停止計(jì)算#defineJINGDU0.00001#include<stdio.h>intmain(){ doublea,x2,x1; scanf(“%lf”,&a); x1=1; x2=(x1+a/x1)/2;
while(x2-x1>JINGDU||x1-x2>JINGDU){
x1=x2; x2=(x1+a/x1)/2; } printf(“%d%d\n”,x,y); return0;}x1=1xn+1=(xn+a/xn)/2問題2:
求
裴波那契數(shù)列的第n個(gè)數(shù)intmain(){ intn,F0,F1,F2; scanf(“%d”,&n);
F0=0; F1=1;
if(n==0){ printf(“
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 交通銀行外匯融資合同樣本
- 中小學(xué)學(xué)生校園意外傷害賠償合同范本
- 國(guó)內(nèi)運(yùn)輸代理合同模板
- 銷售保健品合同范本
- 設(shè)備試用協(xié)議合同
- 個(gè)人資金借貸合同范本
- 個(gè)人房屋按揭貸款合同范本
- 個(gè)人住房擔(dān)保借款合同細(xì)則
- 個(gè)人房產(chǎn)抵押借款合同三方協(xié)議書
- 臨時(shí)雇傭合同書
- 地 理探究與實(shí)踐 保護(hù)世界文化遺產(chǎn)課件 2024-2025學(xué)年地理湘教版七年級(jí)上冊(cè)
- 內(nèi)燃機(jī)車鉗工(中級(jí))職業(yè)鑒定理論考試題及答案
- 長(zhǎng)期處方管理規(guī)范-學(xué)習(xí)課件
- 高中英語(yǔ)外研版 單詞表 選擇性必修3
- 2024年人教版小學(xué)六年級(jí)數(shù)學(xué)(上冊(cè))期末試卷附答案
- 2024-2025學(xué)年江蘇省南京鼓樓區(qū)五校聯(lián)考中考模擬物理試題含解析
- 標(biāo)準(zhǔn)作文稿紙模板(A4紙)
- 中小學(xué)校園突發(fā)事件應(yīng)急與急救處理課件
- 2024年山東省普通高中學(xué)業(yè)水平等級(jí)考試生物真題試卷(含答案)
- 2024年青海省西寧市選調(diào)生考試(公共基礎(chǔ)知識(shí))綜合能力題庫(kù)匯編
- 2024年湖南高速鐵路職業(yè)技術(shù)學(xué)院?jiǎn)握新殬I(yè)技能測(cè)試題庫(kù)及答案解析
評(píng)論
0/150
提交評(píng)論