广告

备考二级c的一些注意和总结

2018-7-7 14:01 225 1 3 分类: 软件与OS 文集: 备考二级c
填空题(最多3个空填)
1.注意数据类型。初始化赋值
2.理解题目、分析功能和代表意义
填空:循环条件  最值 看它代表的含义 数组(长度) 字符(个数)
数组的条件:字符型,看固定的变量含义

基本含义
1.统计初始化  sum = 0  ---  统计累计  sum = sum + i
  定义多个副本 j, 用来记录位置
  a[i] = 0;对应switch,可对应多个对象同时统计数目
  或者为最大值的基值参数 
也可以有sum = a[0]的初始化形式,表示一维对比基值(最值常用)
————初始化数组,变量 统计初始化  备份缓存数组或者变量  中转变量
(统计) 1.初始化量 2.自增1(个数) 3.m%10 (取个位数字) m/10 (消去一位)
取余的两种含义:取个位数(%10);每10个为一组,(隔开操作)(%10==0)
2.状态,结束标志  y[j] = -1  //常见于字符串,或者其他复制、删除结构
k = 0 (继续状态)/ k = 1 (过滤状态)通过死循环条件
k = i (记录位置并状态) //常用于统计一维数组各对象数目
//********************//********************//********************
//********** k = 0 为统计初始量/状态量  k = i 为位置量//********************
3.数组输入输出 for (i = 0; i < N; ++i), N为数组长度
或者输出数列 减轻操作
//————————while - for 比较:while 可用于过滤结构 for用于输入输出
联系if,有时候条件为0时才是执行,如isdigit( *s)数字判断函数

4.插入操作 y[j++] = x[i] (隐变量插入)等价于 y[j] = x[i](复制操作), ++j 指向下一个
j++/++j 多用于复制、插入操作中,逐次传递
5.随机数 x[i] = rand()%50 产生五十个随机数,分别装入x[i]中
fabs(n-m) 求浮点数x的绝对值
例子:fabs(n-m)<0.001 反向含义:表示绝对值大于0.001
小写转大写 toupper(*p) tolower(*p)反
判断数字0-9 isdigit( *s)
字符串长度  n= strlen(a);注意(用指针)
判断字母字符 isalpha(*s)

补充:文件处理函数 
fopen (文件名,使用方式) fclose(文件名) 
fgetc(fp) 从fp指向的文件中输入字符 fputc(ch,fp)将字符ch输出到fp指向的文件中
 fgets(str,n,fp)从fp指向的文件中读入一个n-1长度的字符串,存到str数组中 
fputs(str,fp)将str指向的字符串写到fp指向的文件中 
fread(buffer,size,count,fp) fwrite同 其中buffer是一个地址,size读取的字节数,count读写的数据项(每个长度为size)
使用方式表:r 只读 ; w 只写; rb - wb 对应 区别:前面是文本 后面时二进制
字符处理函数
gets puts getchar() putchar()
6.一般存在a[i] b[j], 其中一个作为缓存数组(插入操作中)

基本结构
1.循环结构  通常用于定义或者“摆脱”操作(循环条件)(过滤操作)(有条件加减)
2、条件结构  通常用于多个同时统计(一维数组)(switch) 是否过滤

一般习惯
1.一对printf,对应输出同一个量,应该为前后对比
2、一般处理都是逐个处理
3、处理原数据,采用拷贝处理
4.字符串处理,总是在最后添加上结束标志‘\0‘
5. while(x>999||x<0) 范围取值
6.t = 2*i 用中转量代替表达式,中转量表示
特别
1、return  ctod(a)+ctod(b) 处理并输出 (函数返回)
2.if(isdigit( *s))  //是否含有数字0-9 没有的话执行
3.d=d*10+*s-'0';//将字符转换为面值相同的整数 其中s指向字符串,d初始化为0 单个转换
n = ch - 'a' 系统自动将字符转换为ASCII码进行运算 意义为:
ch = ch - 32 小写变大写
4、aa[i]=m%k; 转换为k进制 取余运算(十进制转其他)
m/=k;缩小数字
典例:for(i=0;m;i++)   //属于同变循环 都是I
  {
/*************found**************/
aa[i]=m%k;
m/=k;      //取余进制运算(十进制转其他)
  }
  for(;i;i--)
/*************found**************/
printf("%d",aa[i-1]); //特别注意 for循环结束后,i多加1
}
5.循环结束标志 即。到了0就结束
典例:while (x[i++] != 0);
   printf("%f\n", fun ( x ));
6、字符数值
典例: if( isdigit(*s) )  //抽出数字字符,来处理
sum+= *s- 48 ;//字符与‘0’(48)之差,就是该字符对应的数

错误题(最多3个错误)
1.基本结构  从函数错误(分号,返回值,大括号)  指针地址错误(地址,地址指向)  循环错误 ‘=’分析;‘;’缺失;‘;’冗杂
2.算法错误  等价算法
//————————结构错误(定义错误 函数错误)  功能错误
算法复杂时,注意基础错误
3.变量初始化 例:循环变量i-j 统计变量sum等  
注意位数算法:多位数表示:t = t*10 + a;
(表示全部数字相同的位数,t*10高位,+a是最低位)
取个位t = t%10;去一位t = t / 10;
归类:printf()  main中的格式输出符%s/%c 与 fun()中返回类型是否一致
缺少‘,’ 等成分
即:形参和实参 返回值类型
scanf() '&'缺失
for()while()if() ‘;’错误; "<="取等考虑;"FOr"大写错误
int * p 形参与实参指针对应;*p-p的区别
main() ‘}{’缺乏
fun() 数据类型不匹配
一般:注意 算术运算符 / %(整数); 函数类型一致
注意 公式题中,看清题目要求
先特殊再一般

整体结构
1。输入结构  中间处理 输出结构  提示词 printf scnaf
2.  产生结构
猜:main基本结构:输入--处理--输出
fun()基本结构:定义--算法--返回
文件结构:fopen(打开) fread/fwrite(读写) fclose(关闭) 引用文件
算法 处理文件
字符结构:复制 插入 删除   操作处理  
  注意:可使用*p++经行循环,表示遍历全字符串
转义字符,空格等,都是''表示
‘0’/ 48     结束标志(头和尾)

广告

文章评论 2条评论)

登录后参与讨论

greedyhao 2018-7-9 17:56

二级C的秘诀不是好好做完大题,拿好大题60分,然后选择填空就随便看看,差不多就可以走了

rdg1993 2018-7-9 17:02

路过。。。
我要评论
2
1
广告