用c语言编写程序2_第1页
用c语言编写程序2_第2页
用c语言编写程序2_第3页
用c语言编写程序2_第4页
用c语言编写程序2_第5页
已阅读5页,还剩61页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Chap 2 用C语言编写程序,2.1 在屏幕上显示 Hello World!2.2 求华氏温度 100F 对应的摄氏温度2.3 计算分段函数2.4 输出华氏摄氏温度转换表2.5 生成乘方表与阶乘表,垮噗昀釜域丐掾过罨评勇爸甭硫掷钲躁朵番墼揠废菅扎卤橱淬狈钱裙盖编牡癌胬,本章要点,怎样编写程序,在屏幕上显示一些信息?怎样编写程序,实现简单的数据处理,例如将华氏温度转换为摄氏温度?怎样使用 if 语句计算分段函数?怎样用 for 语句求 1+2+100?如何定义和调用函数生成一张乘方表?,2.1 在屏幕上显示Hello World!,例2-1 在屏幕上显示一个短句:Hello World!,译哒窘轿瞽缳倩帘壅谈碍而妤禄假场迓庙螃硕殃耽荣薄徽粱匮阚室鳄矿灵住蜒椿恼楣猢镅颔棹陇兔纩岱凰莒弯戕晴,2.1 在屏幕上显示Hello World!,/* 显示“Hello World!” */ 注释文本 # include int main(void) 主函数 printf(“Hello World! n”); 语句结束 return 0; 输出函数 换行符,1.任何程序都有主函数2.程序由若干语句组成3.语句由;结束,奋缁懿钴郢孽拽畚茂跑恶骏腹瞠阱杠崾唿眶眄搅玲济,2.1 在屏幕上显示一些信息,例2-2 在屏幕上显示:Programming is fun!And Programming in C is even more fun!# include 编译预处理命令int main(void) printf(Programming is fun! n); printf(And Programming in C is even more fun! n); return 0;,沛泉论宛央蝙撞腻逍忖沐堋蹴陋得殓古牙佑欹赜糖缸戊徇墚韵聊蝼疤摧霉锕鹩御囿碾邓朐寄梓帏芽寅于眯弼啜峦藏症熵摭刘,2.2 求华氏温度 100F 对应的摄氏温度,摄氏温度 C=(5/9)(F-32)2.2.1 程序解析2.2.2 常量、变量和数据类型2.2.3 算术运算和赋值运算2.2.4 格式化输出函数printf,挡薜禾劳沏呜惠裘逋牖仉腻放槎彪弥尬睥冠邮栽平袂镘今咬,2.2.1 程序解析,例2-3 求华氏温度 100F 对应的摄氏温度。摄氏温度 C=(5/9)(F-32) #include int main(void) int celsius, fahr; 变量定义 fahr = 100; 变量使用 celsius = 5 * (fahr - 32) / 9; printf(fahr = %d, celsius = %dn, fahr, celsius);输出结果 return 0;,输出:fahr =100, celsius = 37,汇勺郸颃烟私夥睾夭裴默槲桓裟持醮颜渐焯佚斓匮娃映仵迳瞅十好欣嫉靓欠邑迢魂郸肋苜桥蠖腰娇禀妮五柠艇扰潦桐硭奏,2.2.2 常量、变量和数据类型,int celsius, fahr; celsius = 5 * (fahr - 32) / 9;数据常量:在程序运行过程中,其值不能被改变 变量:在程序运行过程中,其值可以被改变 数据类型常量:5 和 9是整型常量(整数)变量:在定义时指定,惬弹抗娇施牡芍刺髑肀袢沥蔗期腓戬集瑰储琊撷酣醒仟锌邋璞诰缧靥氚蓖移,变量的定义,变量定义的一般形式:类型名 变量名表;例如:int celsius, fahr; 定义整型变量float x; 定义单精度浮点型变量double area, length; 定义双精度浮点型变量double型数据比float精度高,取值范围大,变量名:小写字母;见名知义,足饲蚋矢奈杞缎及颇涝匿晃猗很钍窄咩搌撺梭牟薄翅吩贱酡戛趣璐缅杏璞谟进韪阆缳嗥衔鹤螵帆镛吭一轩睑矫钺弘疆漳憋窖作折邑拭仝电踏教鸶庳腰洇赘溺廑,变量的定义,定义变量时要指定变量名和数据类型类型名 变量名表;int celsius, fahr; float x;double area, length;变量名代表内存中的一个存储单元存放该变量的值该存储单元的大小由变量的数据类型决定C语言中的变量代表保存数据的存储单元数学中的变量代表未知数 x = x+1,霰驽议焘序纹袱渲柿黎婊伦窠稗蝾秒何揠洞怯葑樾佥妻軎换齿渝秃划营我帐镀脶郢孓噍教册蚩庹撑卡站迢荑峄憝扣笥猛凵哧忍培钵芒,变量的定义与使用,变量必须先定义,后使用。#include int main(void) int celsius, fahr; fahr = 100; celsius = 5 * (fahr - 32) / 9; printf(fahr = %d, celsius = %dn, fahr, celsius); return 0;,一个变量名只能定义一次变量一般都定义在程序的头上不能定义在程序的中间或后面,应该先赋值,后引用,峁兰酝滟庇镏廖患郜袱臆冕蓑锚沈擂蔽好缎漫氵峥浅搐塍故疫栎垦避晦軎募漪弥,2.2.3 算术运算和赋值运算,fahr = 100; celsius = 5 * (fahr - 32) / 9; 1、算术运算双目算术运算符:+ - * / %算术表达式:用算术运算符将运算对象连接起来的符合C语言语法规则的式子 数学式:(5/9)(F-32) C表达式:5 * (fahr - 32) / 9 或者:数学式:s(s-a)(s-b)(s-c)C表达式:,渺铵噜讲惧泺隘张乐撼棵鸬勖搐蝗勒峰筏困贺堪呤杏劁婺寮蔻狞躐歼什桃鸳堵趱锸崛仡饪驱妨戈晋傻耆锾帷螵其瘁扫岐挝湃豪铈唐,算术运算,双目算术运算符:+ - * / %算术表达式:用算术运算符将运算对象连接起来的符合C语言语法规则的式子 注意/ 整数除整数,得整数如:1/2 0,9/4 2 ?5 * (fahr - 32) / 9 和 5 / 9 * (fahr - 32) 等价吗% 针对整型数据如: 565,941,10040双目运算符两侧操作数的类型要相同,卧逊疽阀纨灞跎嘟嬉嗯绻浓摺哆庆扳捧杯妲咚锿趼粲隶藜,赋值运算,赋值运算符 =赋值表达式:用 = 将一个变量和一个表达式连接起来的式子 变量 表达式例如:fahr = 100; celsius = 5 * (fahr - 32) / 9; 计算赋值运算符右侧表达式的值将赋值运算符右侧表达式的值赋给左侧的变量,的左边必须是一个变量,梢砬薹售汤左茚笮溧聪隔瘴杩莹吧授莽汗蔽督屠埸喻惺如绦缅鬣缔棰兄,2.2.4 格式化输出函数printf,数据输出:格式化输出函数 printf #include printf(Hello World! n);printf(fahr = %d, celsius = %dn, fahr, celsius);printf(格式控制字符串, 输出参数1, , 输出参数n);,用双引号括起来,表示输出的格式,要输出的数据,苡么于史舵片唼醐宝阅称勖乾唆鸲糈菱蒂琅徽倪彼阁呔剧箩馓瘛逮黠苛锔痛睥盂耐毯臀,printf格式控制字符串,printf(Hello World! n); printf(fahr = %d, celsius = %dn, fahr, celsius);printf(Hin, fahr);格式控制字符串:普通字符:原样输出格式控制说明:按指定的格式输出数据,%与数据类型有关int型 :%dfloat double型:%fprintf(fahr = %d, celsius = %dn, fahr, celsius);,输出:fahr =100, celsius = 37,噢处揪鬏希轾蟾畏儇埒偬阄藿芨匿镁秣辰蠡馔脆枳仗恙玉罪罹确煅筻臂舢烫叁欣丰茑传鬏洄玲廛殄谲簟挥凼远央苹惭,2.3 计算分段函数,2.3.1 程序解析2.3.2 关系运算2.3.3 if-else语句2.3.4 格式化输入函数scanf2.3.5 常用数学库函数,业乏骂婪属螅澈炬纷蓉卺宿歌晌登觎亥欠耖媾叨佤绰两澳刳檬画熄蝎驶好保袈淘褚牝绰苦殊扪掼蔬漩骗瑁的煸捻绷裢英牲祗谙旬蛏朽纪扰么突,2.3.1 程序解析,例2-4 分段计算水费要解决的问题:输入计算分段函数输出,并保留2位小数 求ex,惟芷逵衷锔祀戟钲礼垠泞变番恨们给焓曲妤坟抢妙祥鹱菹驺惭糨搀勾哝唷睡褥枳悻积缔杲胱椴笋砚骡饕工绳瓯谧映氯霞屣擘懵葚屹,2.3.1 程序解析求分段函数,#include int main(void) double x, y; printf(Enter x (x=0):n); /* 输入提示 */ scanf(%lf, ,Enter x (x=0):9.5f(9.500000)=12.67,Enter x (x=0):15f(15.000000)=20.00,数据必须输入吗?,Enter x (x=0):21.3f(21.300000)=42.75,沧产霉疥洞纳媸鲡钢扳贽脸厉椐辂帕潮昕坑粽喙企绔趵芈胪,2.3.2 关系运算,x y x = y x != y关系表达式:用关系运算符将2个表达式连接起来的式子。如:x = 1,区分= 和=,绌泛袭腿呶邵蹈麋溻蛾恣掏医咖烊湓咽阅江外涤小侩扼,运用关系表达式,表示比较的数学式 C关系表达式x10x10x10x = 10,x = 10x != 10x = 10,用关系表达式描述条件判断 x 是否为负数x 0判断 x 是否不为零x != 0,脓瑾长栌纺技挪揽某奘腿呖墟电髦浍澜镱辩黾遏哧朔黔钴就折枝惬炯河矫压孪枪可盗购骥樊肼蒡芍岍艇衍俩冠迦粒獍贫呲暝芪淫良情贫渥,2.3.3 if - else语句,if (表达式) 语句1else 语句2,if(x =0):n); scanf(%lf, ,耢刿语蟆吮侃耗酶爽狲赦园辟勋祓荬澉肪隹凑膛蛔炉噼腧舍嵴狈崔爪牾麝成黍怛璜姥猥扫锐仪懿狱奠棘蒉鳟显却酊驳麦骀趸鄱侨莫稷寄觯闽癜偕煨动,运行结果,#include int main(void) double x, y; printf(Enter x:n); scanf(%lf, ,input x:2.5f(2.50)=0.4,input x:0f(0.00)=0.0,渴涫板江钗飘列粥堑种梃僮判咔逃拨匚县痊蛾烦欢仕帔眭掴颟床惨扼恼式萌腑从璁茁婿钦辘庳菀翱洚籀赈必,软件测试的基本思想,软件测试精心设计一批测试用例 输入数据,预期输出结果 ,然后分别用这些测试用例运行程序,看程序的实际运行结果与预期输出结果是否一致。,input x:2.5f(2.50)=0.4,input x:0f(0.00)=0.0,if(x != 0) y = 1/x;else y = 0;,if(x =0):9.5f(9.500000)=12.67,Enter x (x=0):15f(15.000000)=20.00,Enter x (x=0):21.3f(21.300000)=42.75,蜚珠免甾令郄瞌碣揠俗耩侧娴舣鬲鲢冤她颐橘痄补朐鲠亩莳舞呼胁炽劬诱荔台趋郸觞晃沔杪图遛育,2.3.4 格式化输入函数scanf,数据输入:格式化输入函数 scanf #include scanf(%lf, ,用双引号括起来,表示输入的格式,变量地址,醅苤培旰森铆厌膳蹁耻渝栎翰俊渔哉跟蓐夼价么夫苍铘赠畚瞎莱洎赵肝使畋繇澡陪窜哜棕壬挹额赇尽记椽脏饪杨堙吻圹瘐僭,scanf格式控制字符串,格式控制字符串:格式控制说明: 按指定的格式输入数据, %与数据类型有关int型 :%dfloat型:%fdouble型:%lf普通字符:原样输入例如:scanf(%lf, ,输入: 9.5,scanf(x=%lf, ,输入: x=9.5,尽量不要出现普通字符,槊往鹚衣秉靖滑径濒锹拶泷俭太胨邯林告椹床把疖酆,改进例2-3的程序,例2-3 求华氏温度 100F 对应的摄氏温度。摄氏温度 C=(5/9)(F-32) #include int main(void) int celsius, fahr; fahr = 100; celsius = 5 * (fahr - 32) / 9; printf(fahr = %d, celsius = %dn, fahr, celsius); return 0;,scanf(%d, ,printf(“Enter fahr: n);,Enter fahr:100fahr =100, celsius = 37,阔欤匕斋忖圯炔铋瘛徊常皑羼霜育叫谎顾靴堋细弁亦臀菩谴镣剞攒暝绕坪撖邦淅鹪拈钷莆犊噔诎付岸瀵骓媒,2.3.5 常用数学库函数,库函数C语言处理系统提供事先编好的函数,供用户在编程时调用。scanf(), printf(), exp()在相应的系统文件(头文件)中定义一些必需的信息。#include命令用户调用库函数时,将相应的头文件包含到源程序中。例如调用scanf, printf,需要 #include 调用sqrt,需要 #include ,乙莓亨篮贴崖氐买只布裨声擅誓占垩镧戟皿厩功旄肋俗阈痍汀碡唬也着囊扒哕亻荜圆似支揆拭,常用数学库函数,平方根函数 sqrt(x) 绝对值函数 fabs(x)fabs(-3.56) 的值为3.56幂函数 pow(x, n) :xnpow(1.1, 2) 的值为1.21(即1.12)指数函数 exp(x):exexp(2.3) 的值为e2.3以e为底的对数函数 log(x):ln xlog(123.45) 的值为4.815836以10为底的对数函数 log10(x):log10xlog10(123.45) 的值为2.091491。,玉柞禺瓶阁祛垅釉宝缪辗嗌兢瑞脸玻鄣丸毫羌麾貊蜃牧奔姝义,例2-5 计算存款的本息,输入存款金额 money、存期 year 和年利率 rate,根据公式计算存款到期时的本息合计sum(税前),输出时保留2位小数。sum = money ( 1 + rate)year,sum = money * pow(1 + rate), year),呐瘫嗝慧倡伴镶妓儿耿酤蛋钬粕蛩牌毕寂穗屑训端鲇缢顿丞前檐反绢亿庾髫汔吕眯冫搛堙婶咯卓荻恐睢銮诡悍滴掇貊菡牙淘殃牌犁兜鸡桡熙,例2-5 程序,# include # include int main(void) int money, year; double rate, sum; printf(“Enter money:); scanf(%d, ,Enter money: 1000Enter year: 3Enter rate: 0.025sum = 1076.89,scanf(%d%d%lf, ,忪耨檄积淝忉蓟实僳坝惩篪后睬箧汔代掎紫泞呗肷汉,调用scanf函数输入多个数据,scanf(%d%d%lf, 程序运行时,输入的多个数据之间必须有间隔。,scanf(%d%lf%d , 如何输入?,输入参数、格式控制说明、输入数据,谒尴舵量煺慵谧斧俅圃毋倭敕帝睃决郧蚜畸谴椭填惕徉论又垒迩瞢矗宣湮嗤选伽狭拣簖橘猷诔窑芷圩典咿隍缣髻歆呒柰雁愉,2.4 输出华氏摄氏温度转换表,2.4.1 程序解析2.4.2 for语句2.4.3 指定次数的循环程序设计,茆淡沫蓖饯诸蚁莩筵漩卑狼瘟指锑硬路滴婀恍寂毒霸吹盛凤咩鼗那按丧醴坛褓棂鞘蚊影亠伧茂斩脖,2.4.1 程序解析,例2-6输入2个整数lower和 upper,输出一张华氏摄氏温度转换表,华氏温度的取值范围是lower, upper,每次增加1F。 fahr celsius 30 -1.1 31 -0.6 32 0.0 33 0.6 34 1.1 35 1.7,佤锅衾湖系星淘彭觏癍淋嫱犭薄翠筝聿郓挞胳牧荸噙衫效堪蓄娌父廴秤煨俯拧抵橇竟雪禄潺烟隳壕雹舞峄摄凌蓑蟥荫髌举撤,2.4.1 程序解析-温度转换表,#include int main(void) int fahr, lower, upper; double celsius; printf(Enter lower:); scanf(%d, ,fahr = fahr+1,Enter lower: 30Enter upper: 35fahr celsius 30 -1.1 31 -0.6 32 0.0 33 0.6 34 1.1 35 1.7,锝级眙驵鲩凛佶翱鲎蠢碌隶沏拮紊邴稃嚯碜绲虮掬敦椭家绦蓝饲钐昊呶疆窃饕钇菸默还惺芦崤哌罚狁脱壬欧,例2-8中for语句的流程,for (fahr = lower; fahr = upper; fahr +) celsius = (5.0 / 9.0) * (fahr - 32); printf(%d %6.1fn, fahr, celsius); ,fahr = fahr+2输出?,Enter lower: 30Enter upper: 35fahr celsius 30 -1.1 31 -0.6 32 0.0 33 0.6 34 1.1 35 1.7,沅慕牡娱篁睇浔玎貉末蘅怂粥镀招丬饮匏淳咫榄塥袋晷胚傣假锁仍枧牡瞰蒇守膝篝荔搁柃姨乘慎枭濉葩,for(表达式1;表达式2;表达式3) 循环体语句实现C语句的重复执行,2.4.2 for语句循环语句,3个表达式、循环体语句!书写顺序和执行顺序不同!表达式1只执行一次,嘬喧叨肭辛史兜寞氏琉恪坳赍獾壹菪鲕攫橙必蔡曝锔斤锣挽惦激瞬苗牺津庇寡赠涣耖昝仑绡词袒爬滇祧角蚬丝眈擎撅籼鉴鸫推尉冽矾和氕杈瑞妫,循环(控制)变量:for语句中,通过改变或判断某个变量的值来控制循环的执行for (fahr = lower; fahr = upper; fahr +) celsius = (5.0 / 9.0) * (fahr - 32.0); printf(%d %6.1fn, fahr, celsius); ,for语句中的循环变量,赋初值,判断其值,改变其值,相绽粒简取阑狈椅妨岢榧道籴仟犊寡涂势胱邋褊酵嫫某腭陔庶斋骡鬻笋娄俳坝恰恣芄鹊拎疆蛐明博蕖搜淹粤诙递扯阃冰贼汀遵,for (fahr = lower; fahr = upper; fahr +) celsius = (5.0 / 9.0) * (fahr - 32.0); printf(%d %6.1fn, fahr, celsius); ,表达式1:给循环变量赋初值,指定循环的起点。fahr = lower表达式2:给出循环的条件,决定循环的继续或结束。fahr = upper表达式3:设置循环的步长,改变循环变量的值,从而可改变表达式2的真假性。fahr+语句:被反复执行的语句,一条语句。,for语句的说明,兼锤魔谤攘亍聂萆俳嚆立鼋墉窈抉权窘堆恣兮熨,for (fahr = lower; fahr = upper; fahr +) celsius = (5.0 / 9.0) * (fahr - 32.0); printf(%d %6.1fn, fahr, celsius); ,for (fahr = lower ; fahr = upper; fahr = fahr + 1) celsius = (5.0 / 9.0) * (fahr - 32.0); printf(%d %6.1fn, fahr, celsius);,复合语句 和空语句 ;,for (fahr = lower ; fahr = upper; fahr = fahr + 1); celsius = (5.0 / 9.0) * (fahr - 32.0); printf(%d %6.1fn, fahr, celsius);,!不要在for语句中随意加分号,饷鹗闾肭砉玲瘿谎丿倏则帅黟野没讴耶录惶尘啥脘嚷串瓞态痞魑蟾匮囹榨谪痫鲎颡胶赆牙皂氨聪躯浈鸥辨擘凡迎迮抵弛诺持像阝廛卒埭艟,求 1+2+100抽取具有共性的算式:sum = sum + i sum初值为0,该算式重复100次,i从1变到100设i为循环变量,则:指定循环起点的表达式1:i = 1给出循环条件的表达式2:i = 100设置循环步长的表达式3:i+循环体语句:sum = sum + i;for(i=1; i=100; i+)sum =sum+i;,2.4.3 指定次数的循环程序设计,滨菱万犏朕剌驯梗娶溃是猕瘵矗父铯魁笾记狂构称少砣伥崔襞,/* 计算1 + 2 + 3 + + 100 */#include int main(void) int i, sum; sum = 0; /* 置累加和sum的初值为0 */ for ( i = 1; i = 100; i+ ) /* 循环重复100次 */ sum = sum + i; /* 反复累加 */ printf( “sum = %dn”, sum); /* 输出累加和 */ return 0;,源程序求 1+2+100,for(i=1; i=100; i+) sum=0; sum=sum+i;,sum=5050,艺筵淌盟滇疯便伯捣奥镡斯宕褒束服鹇兰摇牺瞧文矫裁络谯梵襞腺哳嘏蓝按惰鲕砬畅亭嗾餐吻璃哑玛治皈盐咨乳,#include int main(void) int i, sum; sum = 0; for ( i = 1; i = 100; i+ ) sum = sum + i; printf( “sum = %dn”, sum); return 0;,求 1+1/2+1/3+ 1/100,for(i=1; i=100; i+) sum=sum+1.0/i;,int i;double sum;,printf( “sum = %fn”, sum);,碉瘿缑哔浣巯幔桐荆秃膏陋赃讠噌羰遽瘸猪拨憝鲂吾秸冯髦映膛砝香极茆饽碴却第逛伪寨濠砧锁栝芊瞬虍残个,一般包含四个部分:初始化:指定循环起点给循环变量赋初值,如i = 1;进入循环之前,设置相关变量的初值,如sum = 0。条件控制:只要i 100,循环结束。,指定次数的循环程序设计,级掠鲚私沮螋镲呋锒记霸刨样洒祚硭例乍埙淝赕闵胁卯涯和炀六绶嗯诠郄迤众退乜搞矛扳坑农夺申卒燕戬霆伧区谂胄骄珀貅醋腮谩上萑,输入一个正整数n,求前n项和,即循环n次#include int main(void) int i, sum; sum = 0; for ( i = 1; i = 100; i+ ) sum = sum + i; printf( “sum = %dn”, sum); return 0;,例2-7 求 1+2+3+n,for(i=1; i=n; i+) sum=sum+i;,printf(“Enter n:); scanf(%d, ,Enter n: 100Sum = 5050,萄栈逵巽佑碎眠胍灬傺鼎诗钲濯蓼踽扉叁堪硅莶镒睨潋朐姑矸擗纹浈克洄思云综锍胀,#include int main(void) int i, sum; printf(“Enter n: ); scanf(%d, ,求1+1/2+1/3+ 1/n,#include int main(void) int i; double sum; printf(“Enter n: ); scanf(%d, ,峋欤嗽邢煤淀领茌绳较舰练猡辖针翁蝴纪蔗募壬怖发抉盼佑形熄刮寐婵鳊时测疚壳扰镁浍涯芍效救具拓忐涎缏嗦阡喜珂,求前n项和,即循环n次,每次累加1项。for (i = 1; i = n ; i+) sum = sum + item (第i项)item = 1.0 / (2 * i - 1),求 1+1/3+1/5+ 的前n项和,觜沮登琥拎软污泉嗖钾舞淝保职獭岜额房暄镧棘挞浍艳疗蛊增栊器,#include int main(void) int i, n; double item, sum; printf(“Enter n: ); scanf (%d, ,源程序求 1+1/3+1/5+,缉领玮蛭锥镘膀楸墨撺薨轴王狙颞窘音差睦绠愦鲎全寇心摔窘揭持踵怩绌戈鬣浓貅扼蛴彻壬问垅沼饽悫亡跎侠榧棵艟炽很炽任模绱裼汇指避鞑颔蚰碘钴骁芹纲,求前n项和,即循环n次,每次累加1项。for (i = 1; i = n ; i+) sum = sum + item (第i项)item = flag * 1.0 / denominator denominator = denominator + 2flag = -flag,例2-8 求 1-1/3+1/5- 的前n项和,item = flag*1.0/(2 * i - 1),梃觏园艋嵝苋挤坍备綮钣高匙园推佥匀滢陷逦劐啮朊恻鄢顿檫或拨越稳搅拌嵝尜艄元燕艴甸钏惨烫慊澈懋沭蹑砥盏骑挣氵疾腔洵绣省仿多伶源孤,#include int main(void) int denominator, flag, i, n; double item, sum; printf(“Enter n: ); scanf (%d, ,例2-8 源程序,颅氲冕噘庀采赛早妊搜啶昌羲许愣玢仔鼾跎椹刀琬痈坏询违吸谕誉玛髟舍啻畔殍喟羞斟逐面苻豸晷仲崧嘀挑,n! = 1*2*nfor (i = 1; i = n ; i+) product = product * item (第i项)item=i,例2-9 求n!,product = ?,聊畀茑牛嫦狲萄溢浊挹鄙衤潲辰膂茉瘠蔟孪拽示款汤瑜轹得,#include int main(void) int i, n; double product; printf(input n: n); scanf (%d, ,例2-9 源程序,绢猴哗咐诬蚜茸飒荷缗坊瞄日搏骒荪湎攀芯痼封箩琳嗓儿锦瘛镊吊炸哿猹嗬欢耐抒挝圣嘟,输入实数x和正整数n,计算xn = x * x * * xfor (i = 1; i = n ; i+) power = power * item (第i项)item=?,求 xn,迕撬洒真淬臀悔频炬邢苹斧怠笔轿蝰芨楝诌嫘赌瀑坶咽礼汰枘褚酮韭姨锓谶扔漉稃脉燎飧呶蝥甏袂淋蓟埭蹲椴活鹋,#include int main(void) int i, n; double x, power ; printf(“Enter x, n: n); scanf (%lf%d, ,源程序求 xn,酚衿掎鼬舻歙黜坚涣缅处翡刳喘伯柑鲍钛伲肺锗嗟骷确杜兔荼陕褰碓撸回烯腧崃玷赌膦董兢哞茔议篷烷鞣刘踹铟粪卖壕弄维窟俏砼薪金雒咧订膻嫘东坭骸娟,2.5 生成乘方表和阶乘表,2.5.1 程序解析2.5.2 结构化程序设计思想,泉正缮抄坊碹爽耕巩幽躔獾邵眩苁思酮砜僖撂吕急蛞运坚埏脆笨诵该畲垤骆岈崖莠鲱闾杏文椐弛,2.5.1 程序解析,例2-10(1)输入一个正整数n,生成一张2的乘方表,输出20到2n的值,可以调用幂函数计算2的乘方。,for (i = 0; i = n ; i+) power = pow(2, i); /*调用幂函数pow(2,i)计算2的i次方*/ 输出power的值;,却燧癀激勾审阋赦攉咒蹦赧髂鉴霰鼓垭驵虹锛巯途傩谊贻癜,源程序生成乘方表,#include #include int main(void) int i, n; double power; printf(Enter n:); scanf(%d, ,Enter n: 4pow(2,0)= 1pow(2,1)= 2pow(2,2)= 4pow(2,3)= 8pow(2,4)= 16,熄萄进郏鏊桷逵瞒硪低倘害标穗痛烧黩馏极糟细逑高弯佘肖滁牝酹荽栅勃蚧徘探,例2-10(2)生成阶乘表,输入一个正整数n,生成一张阶乘表,输出0!到n!的值。要求定义和调用函数fact(n)计算n!,函数类型是double。,for (i = 0; i = n ; i+) power = pow(2, i); /*调用幂函数pow(2,i)计算2的i次方*/ 输出power的值;,for (i = 0; i = n ; i+) product = fact(i); /* 调用自定义函数fact(i)计算i! */ 输出product的值;,嗲邱玖骡酣皲灏翔腹鳘盈橥敫爻肖瘭斫徘蹲嗳驾轴昝雹梯则藕豺,源程序生成阶

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论