C语言注意事项.doc_第1页
C语言注意事项.doc_第2页
C语言注意事项.doc_第3页
C语言注意事项.doc_第4页
C语言注意事项.doc_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

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

文档简介

1.switch语句,其一般形式为:switch(表达式) case常量表达式1: 语句1;case常量表达式2: 语句2; case常量表达式n: 语句n;default: 语句n1;其中switch(表达式)后不应该带有;,同时case语句常量后应该是:。2.void fun(STREC *a) double ave=0.0; int i; for(i=0;iave=a-ave+a-si; /*求各门成绩的总和*/ a-ave/=N; /*求平均分*/3.有参函数定义,其一般形式为:类型标识符函数名(形式参数表列)/*double fun(int i)*/声明部分 语句1.锁存器和触发器存储元件,用于开关电路。锁存器是由输入信号控制设备的状态。(2.如果一个锁存器有一个输入信号,使输出的装置1,它被称为一个集存。如果它有一个输入信号,迫使装置输出的0,它被称为一个复位锁存器。如果设备设置和重置的激励信号,它被称为一个置位复位锁存。触发器不同于一个锁存器,它有一个控制信号称为时钟. 3.基本触发器。基本触发器(简存)通常被称为闩锁器。该触发器电路交叉耦合和双大门或与非门的大门。它有两只inputs-s集,用于复位。该触发器是图4.1所示。它是采用交叉耦合和大门。(四1. (11)两只MOSFET的设计有匹配特性。因此,它们是相辅相成的。关闭时,其电阻实际上是无限;当上,他们的通道电阻约为200。2.由于栅基本上是一个开放的电路,它没有电流,并将输出电压等于地面或电源电压,这取决于晶体管导电。(3. 当输入一个接地(逻辑0),n沟道MOS是公正的,因而没有通道增强本身。它是一个开放的电路,因此离开输出线断开从地面。同时,p沟道晶体管正向偏置,所以它有一个通道内提高自己。该频道有一个电阻约200,输出连接线的供电。这将输出到五世(逻辑1)。 if语句的条件表达式一般会考查三方面的内容:(1)条件判断,即与、与、与!的区别,需要仔细分析题干的意思,确定条件表达式的内容。(2)逻辑判断,即&(逻辑与)与|(逻辑或)的区别,需要根据题干确定if条件中若干个条件表达式的并存关系。(3)(赋值号)与(等于号)的区别,注意在if条件中不会出现(赋值号)。4.冒泡排序算法,其基本思想是,将待排序的元素看作是竖着排列的气泡,较小的元素比较轻,从而要往上浮。在冒泡排序算法中我们要对这个气泡序列处理若干遍。所谓一遍处理,就是自底向上检查一遍这个序列,并时刻注意两个相邻的元素的顺序是否正确。如果发现两个相邻元素的顺序不对,即轻的元素在下面,就交换它们的位置。显然,处理一遍之后,最轻的元素就浮到了最高位置;处理二遍之后,次轻的元素就浮到了次高位置。依次类推,完成排序。用代码实现数组sN的升序排列为:for(i0; iN; i)for(ji1; jsj)tsi; sisjsjto;5. 对于m*n二维数组,如采用逐行查找最大元素的方法,代码实现为:int fun (int aM)int i,j,max=a00; for(i=0;i2;i+) for(j=0;jM;j+) if(maxaij) max= aij; return max;6.求1到1000之内能被7或11整除、但不能同时被7和11整除的所有整数,并放入数组a中*void fun (int *a, int *n)int i,j=0; for(i=1;in)得余数 r,再用余数r去除原来的除数,得到新的余数,重复此过程直到余数为 0时停止,此时的除数就是m 和 n的最大公约数。程序首先判断参数a和b的大小,如果ab则进行交换,这里是一个数学逻辑错误,应先将a的值赋给中间变量t,再将b的值赋给a,最后将t的值赋给b。当余数r为0时,除数b即为所求的最大公约数,所以函数应返回b即;int fun(int a,int b) Int r,t; if(a字符数组2,函数值大于0(正数);若字符数组1字符数组2,函数值等于0;若字符数组1=1e-6); return x1;函数fun的功能:将字符串中的前导*号全部移到字符串的尾部。本题解题思路:(1)定义一个指针并指向字符串的首地址;(2)利用循环语句找出字符串的前导*号的个数n;(3)利用循环语句把剩余的字符拷贝到另一个字符串中;(4)在字符串的末尾接上n个*号。void fun( char *a )int i=0,n=0;char *p;p=a;while (*p=*) /*判断*p是否是*号,并统计*号的个数*/ n+;p+;while(*p) /*将前导*号后的字符传递给a*/ ai=*p;i+;p+;while(n!=0)ai=*;i+;n-; ai=0;函数fun的功能:除了字符串前导的*号之外,将串中其他*号全部删除。void fun( char *a ) int i=0; char *p=a; 定义一个临时指针p,初始指向原串首地址 while(*p&*p=*) 利用循环语句把字符串前导*号拷贝到原串; ai=*p; i+; p+; while(*p) 继续移动指针,把串中和串尾的非*号字符拷贝到原串; if(*p!=*) ai=*p;i+; p+; ai=0; ;为修改后的字符串赋结束字符0。要求统计在tt所指字符串中a到z26个小写字母各自出现的次数,并依次放在pp所指数组中void fun(char *tt, int pp)int i; for(i=0;i=a&*tt=z) pp*tt-a+; 【下标】a为pp0,b为pp1.对于一个字符串要删除其尾部的*号,只需要在最后一个不是*号的字符后面加上结束符号0。void fun( char *a )while(*a!=0) a+; a-; /*指针a指向字符串的尾部*/while

温馨提示

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

评论

0/150

提交评论