窝上课不听,how to learn C language easily(1)
C language 学习心得
附:为啥起这么霸气侧漏,招大神们鄙视的标题,正如我在《C language》随笔的介绍中写的,这是一个写个妹纸们看的C language的文章。没错!!写这篇文章的灵感也来自于上周Clanguage课上偶撩到一个连书包都不放下在玩手机的妹子(普通聊天而已,嘘~~~),得知她课后在自学慕课,刚看到数组·····那得有多慢!于是,小子虽不才,但正义感十足,决心写一章超级宇宙无敌简单入门炫酷无敌吊炸天的C language 入门指南。
其实,鄙人大一上受了大神Alexi.F的教诲学习了python,真的是非常方便的语言啊。怀念inginging.之后寒假刷算法,学习了C/c++的一点皮毛知识;
好了,介绍到此,开始正式扯淡(请记住,扯淡扯蛋扯淡~~~)!(不知道一篇博客到底能写多长,万一不够咋整?)
看着一本书的目录写的,好歹有些调理咋。
首先,来说说printf,scanf 之流:
在python中是print,少敲一个字母啦。
int a,b;
scanf("%d%d",&a,&b);
printf("%d %d",a,b);
printf("a=%d b=%d",a,b);
1.在scanf中%x要连在一起写,且只能有%x%x....,也不能写成像这样scanf("输入:%d",&a);
在python中是可以的;
2.scanf中取地址&符号要在除了%s(only one)其他的都要加上,当然%s的那个加上也行啦;
printf中不要加&这个啦。。。
3.在printf中是特别开放的,啥都能往里写的,只要对应好位置就行,一个萝卜一个坑原理;
4.桥黑板!!!这个是在刷题中遇到的,感觉有点用处:
printf的妙用:
printf("%*.*s\n",m,n,ch);
前边的*定义的是总的宽度,后边的*定义的是输出的个数。分别对应外面的参数m和n 。
这种方法的好处是可以在语句之外对参数m和n赋值,从而控制输出格式。
5.%d:实际长度
%md,长度不足左边补上空隔,超了你就会看见按原长输出的
%c,%s:这两个我一开始总是混,因为python中特么不区分啊;简单说,说起来真的很简单呐。智商捉急,在电脑课上还纠结过一会:%c就是a='h',只能输出单个字符,对,就一个,出镜率很低的;%s呢,a="hahah",能输出一个一串字符,很有用。
进阶:关于阿斯克码的问题:1.不要记忆!!至少每次用我都这样整:char a;a='h';printf("%d",a);然后就知道了h的阿斯克码(对了,单个字符是用单引号' ',一串字符用双引号" ",都必须是英文格式下的才行!);2.int x;x='b'-a';则值为1;因为阿斯克码都是连起来的!这样理解的话,就很容易明白,如何把大写变为小写了:char c='m';c='m'+'A'-'a';printf("%c",c);你看,就变成了大写的M并不要记忆它的数值,相减根据连续存放就知道了怎么变为大写;
6.%f:printf("%m.nf",x),m-长度同%d,n-保留小数点位数。一般只要控制保留小数点后的个数:printf("%.nf",x)。(这里的m,n必须是数字,不能是字母!!)
然后,来说一说这个:main 什么鬼?为什么每次都要写?还有那个include,”啊~就是程序前面那个啥怎么拼的?”,一次C语言课上,我旁边的一妹子问道。。。。。。。。。。。。。。。
有这两种写法:
1.#include<stdio.h>(#include<cstdio.h>C++特有的)
void main(){
}
2.#include<stdio.h>
int main(){
return 0;
}
void 就是只不要return 0;int 则要加一行return 0;没有优劣之分,看心情选一个吧。
都是套路。。。。不多说,暂且记住,起码知道拼写咋。。。。
啊偶,貌似前文顺序有点反了。。。说好的条理呢。。不管了,终于特么到数组了,还是老样子,怎么简单我就特么怎么讲。
int a[10];float b[88];----int ,float,char.....都叫作类型名字(这个对理解指针很重要!今天是周六,晚上想早点睡,可能讲不到指针了。。。后文~~后文~~)10 88 啊就是能装多少个叫类型的东东,不要考虑太多,总之就整大一点吧)
先写到这里吧,如果真有人把文章看完了,可以留个言啊,加个Q啊,然后吐槽吐槽嘲讽嘲讽我啊,本来信心满满想一篇文章就搞定的,写给小白(尤其妹纸)看的,刚开始越通俗越好我是这么想的,毕竟C语言课都上了半学期了,我还听见妹子说那个include怎么拼。。。。但是!!!由于第一次正式写文章,感觉写给别人看的真不容易,佩服那些舞文弄墨(释义:此语境下褒义使用)的大神们,跪了。
如果有大神看了觉得我这个小子有点意思,就不吝赐教,留言指导指导我的C language系列吧!我知道有点狗血,很多地方不足,ten times than remain!
谢了,看到这的朋友们!我会坚持发狗血的。。。
窝上课不听,how to learn C language easily(1)的更多相关文章
- Learn c language the one day
第一个c程序 #include<stdio.h> int main() { ; ; printf_s("请输入两个数字:"); scanf_s("%d,%d& ...
- Forget Java to learn Javascript from 0.--Preface
I'm going to start to learn Javascript in this month. Someone told me you can't learn another langua ...
- How do I learn machine learning?
https://www.quora.com/How-do-I-learn-machine-learning-1?redirected_qid=6578644 How Can I Learn X? ...
- A Complete Tutorial to Learn Data Science with Python from Scratch
A Complete Tutorial to Learn Data Science with Python from Scratch Introduction It happened few year ...
- 快速入门:十分钟学会PythonTutorial - Learn Python in 10 minutes
This tutorial is available as a short ebook. The e-book features extra content from follow-up posts ...
- CTSC2016&&APIO2016游记
4.30 下午衡中放假,我们因为比赛的缘故提前到中午12:00放假 然后我爸爸说要来接我,直到下午两点多他才到,然后衡中宿舍的楼管阿姨死活不给我开门 莫名其妙的等到了三点多快四点的时候我才跟实验班的一 ...
- 20155315庄艺霖--对做中学的理解及对c语言和Java的看法
关于做中学的理解及技能训练的思考 在写这篇博客之前,我首先阅读了娄老师的博客,对做中学的概念很感兴趣.我们常说知识要学以致用,做中学强调的是在用的过程中有新的收获和体会来进一步巩固学习.细数我学过的课 ...
- PTA Strongly Connected Components
Write a program to find the strongly connected components in a digraph. Format of functions: void St ...
- 记录在xx公司被考核的15天及自己的感想
在大学有两件事让我很遗憾. 第一:在2013年7月我和自己的前任女朋友分手,这是两年前的事了,我们谈了七个月. 第二:在2015年4月我被xx公司淘汰了,正如我的前任女朋友是我遇到的最好女孩,这家公司 ...
随机推荐
- yii2邮件配置教程,报Expected response code 250 but got code "553"原因
main.php(或main-local.php)中的邮件配置如下: 'mailer' => [ 'class' => 'yii\swiftmailer\Mailer', 'viewPat ...
- Unity 3D Framework Designing(1)—— MVVM 模式的设计和实施(Part 1)
初识 MVVM 谈起 MVVM 设计模式,可能第一映像你会想到 WPF/Sliverlight,他们提供了的数据绑定(Data Binding),命令(Command)等功能,这让 MVVM 模式得到 ...
- Windows搭建以太坊的私有链环境
1.下载Geth.exe 运行文件,并安装 https://github.com/ethereum/go-ethereum/releases/ 下载后,只有一个Geth.exe的文件 2.cmd进入按 ...
- Linux下的文件描述符
文件描述符是一个简单的整数,用以标明每一个被进程所打开的文件和socket.第一个打开的文件是0,第二个是1,依此类推.Unix 操作系统通常给每个进程能打开的文件数量强加一个限制.更甚的是,unix ...
- iwebshop上传类的使用
$upload = new IUpload('10240000',array('jpg','gif','png')); $dir = "upload/dian"; $upload- ...
- 深入理解ajax系列第九篇——jQuery中的ajax
前面的话 jQuery提供了一些日常开发中需要的快捷操作,例如load.ajax.get和post等,使用jQuery开发ajax将变得极其简单.这样开发人员就可以将程序开发集中在业务和用户体验上,而 ...
- GCM(Google Cloud Messaging)推送完全解析
应该是目前为止全网最详细的GCM推送解析. GCM官方解释: https://developers.google.cn/cloud-messaging/?hl=zh-cn Send data from ...
- 性能测试培训:WebSocket协议的接口性能之Jmeter
性能测试培训:WebSocket协议的接口性能之Jmeter poptest是国内唯一一家培养测试开发工程师的培训机构,以学员能胜任自动化测试,性能测试,测试工具开发等工作为目标.poptest测试开 ...
- vim中文帮助文档安装
vim自带的帮助手册是英文的, 对平时编程的人来说没有多大阅读困难,在何况还有"星级译王"呢, 但是我猜和我一样连英语四级都愁的大有人,可偏偏就有一帮好心人人将其翻译成了中文, 可 ...
- 利用sub lr,lr,#4:程序是如何进行返回的?
1: ARM采用的是3级流水线 ARM的流水线结构为: 取指 -----> 译码 ------> 执行 ARM代码: PC PC- ...