选择结构。
1. 格式。
格式1:if(表达式)语句;
格式2:if(表达式)语句1;
else 语句2;
2. 功能。
3. 注意。
1) 表达式可以是常量、变量、算术表达式、关系表达式、逻辑表达式,但表达式中的变量应该是已赋值,只判断表达式的值是否为非零。。几种特殊情况:
if(5)if(a) if(a!=0)
if(a+b) if(a+b!=0)
if(a>b&&b>c) 错误的是:if(a>b>c),也不能是:if(a>b,b>c)
if(a=b) 相当于:a=b; if(a!=0)
if(a==b)
if(ch>=’a’&&ch<=’z’)
if(ch>=’a’&&ch<=’z’)
if(ch>=’a’&&ch<=’z’||ch>=’a’&&ch<=’z’)
if(x%i=0)是错误的表达式,正确的是:if(x%i==0)
2) 满足表达式执行多个语句时一定要用大括号括起来。如:
if(a>b)
3) if语句嵌套搞不清楚时,尽量使用单if语句。如:
if(a>0)
if(b>10)c=c+1;
可改成:if(a>0&&b>10)c=c+1;
4. switch语句。
格式:switch(表达式)
2. do~while语句。格式:do
循环体;while(表达式);
3. for语句。
格式:for(表达式1;表达式2;表达式3)
对于上述三种循环结构要了解下面几个问题:
1) 表达式是循环控制条件,与if语句中的表达式一样。
2) 三种循环语句的执行过程。
#include ""
void main()
int a,b;
for(a=1;a<=9;a++)
return s;
main()
printf(" %12.10lf", fun(30));
4. break和continue语句。
函数。1. 函数定义的格式。
一般格式:函数类型函数名(形参及形参类型)
注意:1) 函数类型的定义:如果只有一个返回值,根据返回值的数据类型来定义。无返回值或2个或2个以上,函数类型定义为void.
float fun (int n)
void main()
printf(“%10.2f”,fun(20);
2) 形参及形参类型:每个形参要分别定义其数据类型;实参将值单向传递给形参。
如:void fun(int x ,int y)
x=x+1;
y=y+1;}
void main()
int a=10,b=20;
fun(a,b);
printf(“a=%d,b=%d”,a,b);
3) 函数体中的return语句只能返回一个值。
2. 函数调用格式:函数名(实参列表)
实参与形参应一一对应,数据类型与个数也应一一对应。tc参数传递方向从右向左。
3.函数调用方式:递归调用。
数组。1. 数组的定义。
格式:一维数组:数据类型数组名[常量]
二维数组:数据类型数组名[常量1][常量2]
注意:1) 数组元素下标从0开始到长度减1
int a[5];
数组元素有:a[0] a[1] a[2] a[3] a[4]
下标从0变化到4,可以使用一个循环变量来控制,如:for(i=0;i<=4;i++)i的变化恰好是下标值的变化。
int a[3][4];
数组元素有:
a[0][0] a[0][1] a[0][2] a[0][3]
a[1][0] a[1][1] a[1][2] a[1][3]
a[2][0] a[2][1] a[2][2] a[2][3]
同样以上一样,可以用一个双层循环来控制二维数组下标的变化:
for(i=0;i<=2;i++)
for(j=0;j<=3;j++)
2. 数组的引用。
两种方式:引用数组元素名(直接方式)和引用数组名。
1) 引用数组元素名时,可把数组元素名看作是单个的变量来使用。如:
scanf(“%d”,&a[0]);
a[0]=10;
2) 引用数组名时,数组名只能作函数参数,且传递整个数组。在被调函数中对形参数组操作,形参数组的值能返回到实参数组。
如:void fun(int b,int n)
int k;
for(k=0;k b[k]=b[k]+1; }
void main()
int a[5]=,k;
fun(a,5);
for(k=0;k<5;k++)
printf(“%8d”,a[k]);
特殊问题。1. 数据的输入与输出。
scanf(“格式控制字符串”,输入地址列表);
该函数出错的四个问题:
1) 格式字符选择不对;常见的是所有的数据都采用d%.
2) 输入地址列表出错,无地址运算符,只有变量名。
scanf(“%f”,x);正确的是:scanf(“%f”,&x);
3) 格式控制字符串中的字符在数据输入时必须原样输入。
scanf(“x=%f,a=%d”,&x,&a)
正确的输入是:x=12,a=345
4)数据输入格式不对。格式串中有其它字符时,必须按上述(3)进行。对于数值型数据的输入,如果没有其它字符分隔,有两种办法:
用空格分隔多个数据,或每输入一个数据换行。特别是数组的输入,常用空格分隔。
输出函数printf(“格式控制字符串”,输出项列表);
说明:1)在输出语句的普通字符是原样输出;
2)%md中是m是规定输出项的宽度;
3)%中m是域宽,n是保留小数位数,系统会自动进行四舍五入。
2.程序中分号引起的错误。
程序中原则上每一行有一个分号,每一个分号对应c语言的一个语句,而导致算法出错的是多加了分号,少了分号系统编译的时就会出错。常见错误:
3. 运算符使用出错。
在程序设计中,使用运算符时常出现以下错误:
4. 赋初值问题。
定义了变量或数组,当第一次使用变量或数组元素时,如果变量或数组元素参与计算或需要输出其值时,则必须赋初始值。特别是变量或数组元素第一次使用出现在赋值号的右边时,则一定要有初始值。一般情况下:
求和变量赋初值为0,求积变量赋初始值为1。
三种方式赋初始值:
1) 变量初始化:定义变量时赋初始值。
int a=1;
float y=1.23;
2) 采用赋值语句赋值。
int a; float y;
a=1; y=1.23;
3) 采用格式化数据输入函数scanf()
int a; float y;
scanf(“%d%f”,&a,&y);
5. 函数。
函数定义格式:
函数返回值数据类型说明函数名(形参及类型)
如:float add(float x,float y)
float z;
z=z+y;
return z; }
void main()
float op1,op2,sum;
计算机复习
第一章信息与信息技术。1.信息的特征 可量度,可识别,可转换,可存储,可处理和可增值,可传递,可再生,可压缩,可利用,可共享,价值性,依附性,信息的时效性,信息的普遍性 客观性 无限性。2.信息技术革命。第一次 语言的使用第二次 文字的创造第三次 印刷的发明。第四次 电报,电视,和广播 第五次 电子...
计算机复习
一 要点。1 信息处理指为获取有效的信息而施加于初始信息的所有操作。包括 信息的收集 加工 存储 传递 施用。2 7基本信息技术 感测与识别技术 扩展感觉器官功能解决信息的获取与识别。通信与存储技术 扩展神经网络功能解决信息的传递 存储问题 计算与处理技术 扩展思维器官功能解决信息的转换和加工问题。...
计算机复习
1.2.3.4.5.6.7.8.9.10.11.在计算机内部一般设有数据总线 地址 总线和控制总线。一条指令包括操作数和 操作码 两部分。时钟 频率是影响cpu性能的重要因素之一。分立离散的信号称为 数字 信号。面向对象的程序设计语言,属于 高级 语言。用户为解决自己的问题而编写的程序,称为 源程序...