1.转义字符:

C中定义了一些字母前加 "\" 来表示常见的那些不能显示的ASCII字符,如\0 空字符,\r 回车, \n换行等,就称为转义字符,因为后面的字符,都不是它本来的ASCII字符意思了。

 

2. 输入输出缓冲区  

 清空输入缓冲区 scanf("%* [^\n]");   scanf("%c[^\n]");

        scanf(" %* c");   scanf(" %*c")

 

3.size of 的应用 ;结果是4、8、8;计算变量占用的字节数。在32位机上,Int占4个字节,double占8个字节。

 

  1 #include<stdio.h>

  2                                                                            

  3 int main(){

  4 int m=5;

  5 double e=2.5;

  6 printf("%d\n%d\n%d\n",sizeof(m),sizeof(e) ,sizeof(m+e));

  7 

  8 }

 

4. 标识符 :

首字母、下划线_、数字(不能放开头)

 

5.指针

1 #include<stdio.h>

  2 

  3 void fun(int *n){

  4 while((* n)--);

  5 printf("%d",++(*n));

  6 }

  7 

  8 

  9 int main(){

 10 int a =10;

 11 fun(&a);

 12 return 0;

 13 }

 

5.(单选题)若有以下程序

#include <stdio. h>
main( ) {
int a = 0,b = 0,c = 0,d;
c = (a + = b,,b + = a); / * 第4行 * /
d = c; / * 第5行 * /
; / * 第6行 * /
;printf("%d,%d,%d\n",a,b,c);/ * 第7行 * / }
编译时出现错误,你认为出错的是
    •  A.第4行
    •  B.第5行
    •  C.第6行
    •  D.第7行
 

正确答案:A
解析:
逗号表达式中间不能为空,必须要有表达式。 

分号; 中间可以为空,不会有警告或者报错。

 

6.C语言的基本单位是 函数。

 

7.设计一个交换变量值的函数:

  func(int * x,int * y)  {  //正确定义指针形参

    int p;   //正确定义自己的局部变量

    p=*x;   //通过指针形参简引用环境变量,并完成交换。

    *x=*y;

    *y=p;

    }    

  fund(int *x,int *y){ //不需要增加局部变量

    *x=*x+*y;

    *y=*x-*y;

    *x=*x-*y

  }

 

8.若定义 int a=3; int *p=&a;

  那么 *p代表引用a变量的值;p代表a的地址值。

9.指针与数组

  9.1  假定a为一个整形数组名,则元素a[4]的地址可表示为 &a[4],也可以是数组首地址加上元素的偏移量:a+4

  9.2  int * pa[5]   //指针数组 。pa是有5个元素的指针数组,每个元素是指向int型的指针。

  

  9.3

  int a[]={1,2,3,4,5,6,7,8,9,10};

  *p=a;   // 指针变量p指向数组a[0]

  p+=2;    //p=p+2 指针p指向变量a[2]

  则*(p++)的值为:// 先算表达式的值为 取a[2]的值为3,并让p指向a[3]

  

  9.4 二级指针取同一个值(b)的代码

   int *pp,*p,a=10,b=20;  

    pp=&p;

    p=&a;

    p=&b;

    printf("%d%d\n",*p,*pp);    

  

10. | 或运算  二进制位运算,有1为1。

 

11.用指针区分开一个字符串内的数字和字母

  char  arr[20]="1234zhangfei";

  int split(char *s1,char **s2){  //一个用于传入,一个用于传出

    int res=0;

    for(; ;){

        if((*s1>='0')&&(*s1<='9')){    //字符在0-9之间就转换为数字

        int j= *s1- '0';

        res=res*10+j;     //把取得的数字拼接到一个数字之中

        s1++;    //继续取数字

        else{

          break;

        }

      }

     *s2=s1;

     return res;

    }

     

 12. 零碎的笔记汇总

数组变量是一个常指针,是数组的首地址。数组只能在声明时赋值,而指针可以多次赋值。

size of 指针为4

数组不能做函数的返回值,指针可以

数组做参数,要指定数组长度。指针做参数,要指定指针的大小。

const修饰的变量,不允许修改。

 

 13.enum的使用

#include<stdio.h>

2

3

4 int main(){

5    enum term{my,i,yours=4,his,her=his+10        };

6    printf("%d,%d,%d,%d,%d\n",my,i,yours,his,her);

7    return 0;

8 }

 结果为0,1,4,5,15

14.

(单选题)对于指针,下( )是正确的。
    • A.声明为void类型的指针可以指向任何类型的对象,并且通过该指针可以直接访问它所指向的对象。
    • B.如果两个指针的类型不是同一个类型,它们就不能相互赋值。(void类型的指针可以与其它类型的指针相互赋值)
    • C.一个int 类型的指针既可以指向int类型的对象,又可以指向int类型的函数。
    • D.数组名就是指针。
 

正确答案:D
解析:
不能用void指针直接访问对象,因此A错误。不同类型之间的指针可以互相赋值,因此B错误。指向函数的需要是函数指针,因此C错误。数组名就是指针,只不过是常指针,因此D正确。

 

c刷题的更多相关文章

  1. LeetCode刷题系列

    LeetCode 我们工作面试和提高自身数据结构和算法能力的时候往往需要刷刷题,我选择LeetCode是通过一个留学论坛了解的.专业,覆盖语种全面. 提前说说刷题的心得: 尽量手写代码,少使用IDE的 ...

  2. ife任务刷题总结(一)-css reset与清除浮动

    本文同时发布于本人的个人网站www.yaoxiaowen.com 百度创办的前端技术学院,是一个面向大学生的前端技术学习平台.虽然只有大学生才有资格报名,提交代码进行比赛排名.但是这并不妨碍我们这些初 ...

  3. 刷题ING...

    我用codeVS刷题.. 努力准备!!

  4. XidianOJ 1020 ACMer去刷题吧

    题目描述 刷题是每个ACMer必由之路,已知某oj上有n个题目,第i个题目小X能做对的概率为Pi(0<=Pi<=1,1<=i<=n) 求小X至少做对k道题的概率 输入 第一行输 ...

  5. 【BZOJ-4590】自动刷题机 二分 + 判定

    4590: [Shoi2015]自动刷题机 Time Limit: 10 Sec  Memory Limit: 256 MBSubmit: 156  Solved: 63[Submit][Status ...

  6. NOI题库分治算法刷题记录

    今天晚自习机房刷题,有一道题最终WA掉两组,极其不爽,晚上回家补完作业欣然搞定它,特意来写篇博文来记录下 (最想吐槽的是这个叫做分治的分类,里面的题目真的需要分治吗...) 先来说下分治法 分治法的设 ...

  7. NOI题库刷题日志 (贪心篇题解)

    这段时间在NOI题库上刷了刷题,来写点心得和题解 一.寻找平面上的极大点 2704:寻找平面上的极大点 总时间限制:  1000ms  内存限制:  65536kB 描述 在一个平面上,如果有两个点( ...

  8. 用js刷题的一些坑

    leecode可以用js刷题了,我大js越来越被认可了是吧.但是刷题中会因为忽略js的一些特性掉入坑里.我这里总结一下我掉过的坑. 坑1:js中数组对象是引用对象 js中除了object还有数组对象也 ...

  9. BZOJ4590 自动刷题机

    Description 曾经发明了信号增幅仪的发明家SHTSC又公开了他的新发明:自动刷题机--一种可以自动AC题目的神秘装置.自动 刷题机刷题的方式非常简单:首先会瞬间得出题目的正确做法,然后开始写 ...

  10. PE刷题记录

    PE刷题记录 PE60 / 20%dif 这道题比较坑爹. 所有可以相连的素数可以构成一张图,建出这张图,在其中找它的大小为5的团.注意上界的估算,大概在1W以内.1W内有1229个素数,处理出这些素 ...

随机推荐

  1. MIP如何为页面加速?

    MIP是近日由百度发起的开源项目,它的核心是一套应用于移动网页的开放性技术标准,通过提供MIP-HTML规范.MIP-JS运行环境以及MIP-Cache页面缓存系统,实现移动网页加速. 换言之就是,M ...

  2. Object备忘录

    1.Object.assign(target,...source) 方法用于将所有可枚举属性的值从一个或多个源对象复制到目标对象.它将返回目标对象. 2.Object.create()方法创建一个新对 ...

  3. 布署配置管理中心apollo

    Apollo(阿波罗)是携程框架部门研发的分布式配置中心,能够集中化管理应用不同环境.不同集群的配置,配置修改后能够实时推送到应用端,并且具备规范的权限.流程治理等特性,适用于微服务配置管理场景. 服 ...

  4. maven工程 添加本地jar依赖

    和第三方平台对接的时候要用到对方提供的一个jar包,jar包怎么直接添加到pom文件的依赖中呢? jar包一般都是公共的,要上传到私服仓库.我们都是直接登录私服,操作仓库. 登录私服可以在项目的pom ...

  5. 2018-2019-2 20175126谢文航 实验二《Java面向对象程序设计》实验报告

    一.实验报告封面 课程:Java程序设计 班级:1751 班 姓名:谢文航 学号:20175126 指导教师:娄嘉鹏 实验日期:2019年4月17日 实验时间:--- 实验序号:实验二 实验名称:Ja ...

  6. Python开发【第十篇】:Redis

    缓存数据库介绍 NoSQL(Not Only SQL),即"不仅仅是SQL",泛指非关系型的数据库.随着互联网web2.0网站的兴起,传统的关系数据库在应对web2.0网站,特别是 ...

  7. iOS多图上传

    iOS多图上传涉及到多线程问题,个人比较喜欢使用GCD操作,下边是最近写的一个多图上传代码,附带相关注释 __block BOOL allSucc = YES; __block int m = 0; ...

  8. nohup python 没有print输出

    nohup python -u crake.py >run.log 2>&1  &

  9. 项目中的Launch_getSecurityEntitle_postlaunch

    研究透彻这个launch和postlaunch的执行过程才能改进他: //AppVTTicket.js ,launch:function(){ Ticketing.inciTick={}; this. ...

  10. 十二、针对单个工程来配置jdk版本

    转载自:https://jingyan.baidu.com/article/9f63fb91427b06c8400f0e98.html 首先小编这里的eclipse工作空间默认的jdk版本是jdk1. ...