c刷题
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.(单选题)若有以下程序
- 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刷题的更多相关文章
- LeetCode刷题系列
LeetCode 我们工作面试和提高自身数据结构和算法能力的时候往往需要刷刷题,我选择LeetCode是通过一个留学论坛了解的.专业,覆盖语种全面. 提前说说刷题的心得: 尽量手写代码,少使用IDE的 ...
- ife任务刷题总结(一)-css reset与清除浮动
本文同时发布于本人的个人网站www.yaoxiaowen.com 百度创办的前端技术学院,是一个面向大学生的前端技术学习平台.虽然只有大学生才有资格报名,提交代码进行比赛排名.但是这并不妨碍我们这些初 ...
- 刷题ING...
我用codeVS刷题.. 努力准备!!
- XidianOJ 1020 ACMer去刷题吧
题目描述 刷题是每个ACMer必由之路,已知某oj上有n个题目,第i个题目小X能做对的概率为Pi(0<=Pi<=1,1<=i<=n) 求小X至少做对k道题的概率 输入 第一行输 ...
- 【BZOJ-4590】自动刷题机 二分 + 判定
4590: [Shoi2015]自动刷题机 Time Limit: 10 Sec Memory Limit: 256 MBSubmit: 156 Solved: 63[Submit][Status ...
- NOI题库分治算法刷题记录
今天晚自习机房刷题,有一道题最终WA掉两组,极其不爽,晚上回家补完作业欣然搞定它,特意来写篇博文来记录下 (最想吐槽的是这个叫做分治的分类,里面的题目真的需要分治吗...) 先来说下分治法 分治法的设 ...
- NOI题库刷题日志 (贪心篇题解)
这段时间在NOI题库上刷了刷题,来写点心得和题解 一.寻找平面上的极大点 2704:寻找平面上的极大点 总时间限制: 1000ms 内存限制: 65536kB 描述 在一个平面上,如果有两个点( ...
- 用js刷题的一些坑
leecode可以用js刷题了,我大js越来越被认可了是吧.但是刷题中会因为忽略js的一些特性掉入坑里.我这里总结一下我掉过的坑. 坑1:js中数组对象是引用对象 js中除了object还有数组对象也 ...
- BZOJ4590 自动刷题机
Description 曾经发明了信号增幅仪的发明家SHTSC又公开了他的新发明:自动刷题机--一种可以自动AC题目的神秘装置.自动 刷题机刷题的方式非常简单:首先会瞬间得出题目的正确做法,然后开始写 ...
- PE刷题记录
PE刷题记录 PE60 / 20%dif 这道题比较坑爹. 所有可以相连的素数可以构成一张图,建出这张图,在其中找它的大小为5的团.注意上界的估算,大概在1W以内.1W内有1229个素数,处理出这些素 ...
随机推荐
- Kickstart自动化安装平台
PXE(preboot execute environment,预启动执行环境)是由Intel公司开发的最新技术,工作于Client/Server的网络模式,支持工作站通过网络从远端服务器下载映像,并 ...
- 安装oracle [INS-32025] 所选安装与指定 Oracle 主目录中已安装的软件冲突” 的问题
删除C:\Program Files (x86)\Oracle\Inventory\下的Oracle文件夹即可解决问题
- webconfig标签收集
在web项目启动时,很多因为vs没有报错,而页面跑不出来的情况,无法调试找到错误, 可以在webconfig中添加一个标签,运行项目就可以在页面显示错误 <customErrors mode=& ...
- spring boot 1.x配置,不断完善中
spring boot是典型的约定大于配置,那么很有必要对在开发过程中这些配置做统一的添加记录,以免用到的时候到处搜索,网上的东西又良莠不齐. server.port=8880 微服务注册中心,yml ...
- Trie树详解(转)
特别声明 本文只是一篇笔记类的文章,所以不存在什么抄袭之类的. 以下为我研究时参考过的链接(有很多,这里我只列出我记得的): Trie(字典树)的应用——查找联系人 trie树 Trie树:应用于统计 ...
- C# 木马功能的简单实现
1.首先解决开机启动木马.通过建立开机启动服务达到目的:2.伪装问题.通过c#反射性能,将正常的.net的exe文件添加监控盗传播取等其他功能,执行正常程序同时,后台悄悄释放windows服务,通过服 ...
- nginx屏蔽ip配置
屏蔽单个IP的命令是 deny 192.168.201.1 封ip段192 deny 192.0.0.0/8 封ip段192.168 deny 192.168.0.0/16 封ip段192.168.2 ...
- Cocos2dx开发之运行与渲染流程分析
学习Cocos2dx,我们都知道程序是由 AppDelegate 的方法 applicationDidFinishLaunching 开始,在其中做些必要的初始化,并创建运行第一个 CCScene 即 ...
- 第一次博客作业 <西北师范大学| 周安伟>
1.助教博客链接:https://home.cnblogs.com/u/zaw-315/ 2.本周点评的作业数:3份,有留言互动. 3.本周点评有困难的地方: https://www.cnblogs ...
- vue项目中使用less或者sass的方法
半年木有更新博客了... 前段时间一直在学习vue,开始记录一下遇到的问题吧 这篇文章主要是总结一下vue中使用less或者sass的方法,以less为例(style.less) 主要是两种 1.对于 ...