1、 程序技术基础的笔记1 i=0,这是一个赋值的表达式,它永远不会为真,因为该表达式就是那个赋给 i 的值,即为 0。2 else if (b=a)else (c=a) d=c;cout一样可以进行提取的操作,但是不能提取空白的地方,而 get()可以。12for 语句中的定对象只能在其中有效,不能在括号外运行。13sqrt()是一个平方根的函数。14X 的平方可以用 X*2 来表示15编译预处理命令以#开头,它们可以出现在程序的任何位置,但是一般写在首部。16C+程序用到的库文件主要来自于 1)标准 C 语言库函数的头文件,起文件名带有.h,如:stdio.h math.h。2)标准 C+语言类库的头文件,其文件名不带.h 的后缀,如:iostream string .。3)由标准 C 语言库函数头文件扩展而来的标准 C+的头文件,其文件名是把原有的标准 C 语言库函数头文件去掉.h 后缀再加上前缀 c 而形成,如:cmath cstdio cstring。在 C+程序文件中如果用到了带后缀的.h 的标准 C 语言库函数的头文件时,不必用名字空间,只需要在文件中包含所用到的头文件即可。
2、而用到 C+语言的函数 和类时,则不仅要包含相应的文件,还需要在程序中 “using namespace std;”命令对名字空间 std 作声明。17宏定义: 三种:1)不带参数的宏:#define 宏名 字面串 2)带参数的宏:#define 宏名 (形参数) 字面串 3) 终止宏定义:#undef 宏名18回文数 int n,m; 对称例如:121 ,1234321 ,11i=n;m=0;while(i)m=m*10+n%10; n=n/10; 用这个来判断这个数是不是回文数。19闰年的函数是 isLeap()。20变量的作用域和存储类别:根据变量的作用范围分为局部变量和全局变量(外部变量:从定义开始到源程序结束) , ;内层的变量可以和外层变量名字相同,因为它们的作用范围不同,而且位置不同,在内存中占用的是不同的储存单元因而不会引起系统的识别错误。但是系统在处理它们的方法是局部变量优先于全局变量。21变量分为四种:自动类型,静态类型,寄存器类型和外部类型。在函数中定义的局部变量默认为自动类型,在函数之外的全局变量即为外部类型。也可以在定其义时在其前加上修饰词:static ,r
3、egister 将该变量声明为静态类型或寄存器类型。从而说明它的存储位置在;内存的静态存储区或 CPU 的寄存器中。内存中的供用户使用的存储空间可以分为三部分:程序区,静态存储区,动态存储区。在程序执行期间,数据分别放在静态存储器和动态存储器中,叫做静态存储方式和动态存储方式。动态存储区的变量在函数调用开始时才被分配相应的存储 单元中,函数结束时即释放这些空间,这种分配时动态的,如果在一个程序中两次调用同一个函数时,饿 要进行两次分配和释放,而且两次的分配空间都有可能不同,程序中的大多数变量都是这样的。全局变量和静态变量放在静态存储区中,它们在程序开头的时候就被分配了固定 的存储单元,直到整个程序执行完毕才释放这些空间,静态局部变量虽然只有局部作用域,但是却具有静态(永久)生存期。虽然静态局部变量在函数调用结束后仍然存在,但是其他函数是不能使用的,它只能在其在念书的下一次调用中有效。 有时希望函数中局部变量的值在函数调用结束后不消失而保留原值,这时就应该定义该变量为静态局部变量。和 auto static register 不同,extern 只能用来声明已经定义的外部变量,而不能用来
4、定义变量,这个仅仅是声明而已。静态存储器中的变量在未被用户初始化的情况下,系统 00 会自动将其初始化,为0,而动态存储区中的变量,在未被用初始化的情况下其内容是随机的。22声明动态存储变量的 C+关键字是 auto 不是 dynamic。但是可以省略。23#include2425using namespace std;26void test()2728int i=0; /自动变量29static int j=0; /局部变量30i+;j+;31couta;while(ai!=0) i+;cout#includeusing namespace std;int main()double a=0;double n=1;int i;int j;for(i=1;i#includeusing namespace std;int main()double a=0;int i;int j;for(i=1;i#includeusing namespace std;int main()int i,j,h;double Q=0;for(i=1;i#includeusing namespace std;us
5、ing namespace std;void main()int a,b,c,d,m;cincd;if(cd)m=d; d=c;c=m;a=c;b=d;while(b!=0)m=a%b;a=b;b=m;cout#includeusing namespace std;void main()long int n,s;s=n=0;while(s#includeusing namespace std;void main()long sum=0;int a;int i=1;while(sumn;s=n*(n+1)*(n+2)*(n+3);r=sqrt(s);if(s!=r*r)cout,一些有用的函数:int PromptAndGet(): int a=PromptAndGet(); 判断是否是元音的函数 bool IsVowel(): bool IsVowel(char ch);阶乘的函数:factorial(): int factorial(int n);57:在 void 函数中一可以有 return 语句,但是不能有表达式。58:在不同的块中可以允许用相同的标识符。虽然名字可以在一个嵌套
6、块中重用,但是不能再名字初始定义的同一块内重新定义该名字,这种限制意味着下面的代码段式非法的:int i; float i; 在同一个块中重新定义一个名字是非法的,即使在它们的中间有一个嵌套块也是不行的:int i;char i; (这个是合法的)float i; (这个是不合法的)59:在一个函数中不允许出现另一个函数的定义,这并不与函数原型的使用相左。C+要求在全局作用域中定义一个函数,程序的全局作用域不会包含在任何一个语句块中,60:当一个全局对象出现在局部作用块中,应该用单目运算符:来引用全局对象。如果没有对全局对象初始化,则使用值为 0;61: const int a , int b, int c;b=a+2;(合法)a=c+2;(不合法)62:一个源文件中的函数是平行的。63:函数可以没有参数,也可以没有返回值。即所有的操作都在函数中完成,所有的数据均在函数中取得。64:当编译器遇到调用内敛函数时,系统不会调用该函数,而是把该函数代码全部“插入”到调用的位置。这是内敛函数与普通函数最大的区别。65:当表达式值的类型和函数类型不同时,将表达式的类型自动转换为函数类型,这是由系
7、统强制进行转换的,可能出现不保值的情况。66:5/3 的值是 1,而 5/3.0 的值才是真正的正确的值。或者是 5.0/3 也是正确的值。66: 1!+3!+5!+21!=?#include#includeusing namespace std;int main()int a;int b;double sum;double c=0;for(a=1;a#includeusing namespace std; Double f(int i)int j;double t=1;for(j=1;j0? m:-m;int main()double a;double b=0;int n=1;int i=1;int c=1;while(1.0/f(c)=1e-6)b+=i*1.0/c;n+;i=-i;c=2*n-1;a=4*b;cout0? m:-m;int main()double a;double b=0;int n=1;int i=1;int c=2*n-1;while(1.0/f(c)=1e-6)b+=i*1.0/c;n+;i=-i;a=4*b;cout=1e-6)sum+=i*1.0/t;t+=2;i=-i;a=4*sum;cout#includeusing namespace std;int main()float a;int f=0;float b=0;couta)b+=a;f+=1;if(f0)float c=b/f;cout“c:“cendl;elsecout“dksg“endl;return 0;但是在运行的时候,特别是在输入那些数字的时候要在那些数字后面加上 Ctrl+z 表示输入结束。
《程序技术基础笔记1》由会员ji****n分享,可在线阅读,更多相关《程序技术基础笔记1》请在金锄头文库上搜索。