文档详情

嵌入式系统导论-C语言-2分析.ppt

发布:2017-01-08约5.19千字共56页下载文档
文本预览下载声明
嵌入式系统导论 C语言部分-程序设计 程序设计 程序设计的一般步骤: 1. 确定数据结构。 2. 确定算法。 3. 编程。 4. 调试。 5. 整理源程序并总结资料。 算法 所谓算法,是为解决某一特定的问题,所给出的一系列确切的、有限的操作步骤。 算法设计 程序实际上是用计算机语言所描述的算法。也就是说,依据算法所给定的步骤,用计算机语言所规定的表达形式去实现这些步骤,即为源程序。 在算法设计中应遵循的准则: (1) 可执行性。 (2) 确定性。 (3) 有穷性。 (4) 输入。 (5) 输出。 算法的描述 目前,对算法的描述,一般采用自然语言、一般流程图或N-S结构流程图。 常用流程图符号 结构化程序设计的概念 结构化程序由3种基本结构组成:顺序结构、选择结构、循环结构。使用这基本结构编写的程序,称为结构化程序。 顺序结构流程图 选择结构流程图 循环结构流程图 结构化程序设计步骤 顺序程序设计 输入两个整数,交换他们的值 main(){ int a,b,n; scanf(%d%d,a,b); printf(a=%d,b=%d\n,a,b); n=a; a=b; b=n; printf(a=%d,b=%d\n,a,b); } 分支程序设计 ⑴if语句 格式:if(表达式){ 语句 }; 例:求输入数据的绝对值 main(){ int x; scanf(%d,x); printf(x=%d,,x); if (x0) x=-x; printf(|x|=%d \n,x); } ⑵if-else语句 格式: if(表达式){语句1};else{语句2}; 例:输入一个整数,输出其符号 #include math.h main(){ int x; char c; scanf(%d,x); if (x=0) c=+; else c=-; printf(x=%c%d \n,c,abs(x)); } ⑶if-else语句嵌套 例:输入一个字符,此字符为数字输出YES,为字母输出NO,否则输出HELLO main(){ char ch; scanf(%c,ch); if(ch=0ch=9) printf(YES\n); else if (ch=ach=z||ch=Ach=Z) printf(NO\n); else printf(HELLO\n); } ⑷多分支语句:switch-case 格式:switch(表达式){ case 常量1:语句组1; break; ┇ case 常量n:语句组n; break; default:语句组n+1; } 例:输入两个整数和一个运算符号,进行计算 main(){ char ch; int i,j,m,n; scanf(%d,%c,%d,i,ch,j); switch(ch){ case +:m=i+j; printf(%d %c %d = %d\n,i,ch,j,m); break; case -:m=i-j; printf(%d %c %d = %d\n,i,ch,j,m); break; case *:m=i*j; printf(%d %c %d = %d\n,i,ch,j,m); break; case /:m=i/j; printf(%d %c %d = %d,i,ch,j,m); if (i%j) printf(...%d\n,i%j); break; default:printf(input error!\n); } } ⑸switch语句嵌套 例:设计一个把5分制转为百分制的程序 5分制: 5+, 5, 5-,4+,4,4-, 3, 2, 1 百分制: 100,90,85,80,75,70,60,〈60,〈60 main(){ char c1,c2; printf(input score:); scanf(%c%c,c1,c2); switch(c1){ case 5:switch(c2){ case +:printf(score=100\n); break; case \n:printf(score=90\n); break; case -:printf(score=85\n); break; } break; case 4:switch(c2){ case +:printf(score=80\n); break; case
显示全部
相似文档