作业练习 1. #include <stdio.h> int main(void) { char ch; int spare, other, n; //空格,其他字符,换行 spare = other = n = 0; while ((ch = getchar()) != '#') { if (ch == ' ') spare++; else if (ch == '\n') n++; else other++; } printf("spare:%d\nn:%d\nother:%d&q…
记录下写的最后几题. 14. #include <stdio.h> int main() { double value[8]; double value2[8]; int index; for (index = 0; index < 8; ++index) { //输入值. printf("value #%d:", index + 1); scanf("%lf", &value[index]); } for (index = 0; inde…
1. /* 整数上溢 */ #include <stdio.h> int main(void) { ; unsigned ; /* 无符号整数j像一个汽车里程指示表(形容的太好了,可参考<计算机科学导论>第3章 数据存储,有图), 当达到最大值时,它将溢出到起始点.整数i也是同样.它们的主要区别是unsigned int变量j的起始点是0(正像里程 指示表那样),而int变量i的起始点则是-2147483648.——参考<C Primer Plus> */ printf…
这章感觉好难啊,放个别人的总结. // 多维数组和指针 #include <stdio.h> int main(void) { int zippo[4][2] = {{2, 4}, {6, 8}, {1, 3}, {5, 7}}; /* zippo[0]是一个整数大小对象的地址,而zippo是两个整数大小对象的地址. 因为(一个)整数和两个整数组成的数组开始于同一个地址,因此zippo和zippo[0]具有相同的数值. 验证: 输出也显示出二维数组zippo的地址和一维数组zippo[0]的地…
1.题略 /*返回较小值,设计驱动程序测试该函数*/ #include <stdio.h> double min (double a, double b); int main (void) { double x, y; printf ("Please enter two numbers: \n"); scanf ("%lf %lf", &x, &y); printf ("The smaller one is %lf\n"…
1.题略 #include int main(void) { int i; char ch[26]; for (i = 97; i <= (97+25); i++) { ch[i-97] = i; printf("ch[%d] = %c\n", i-97, ch[i-97]); } printf("That is all! thanks~\n"); return 0; } 这是之前写的,有点乱,改了些如下: #include int main(void) {…
Practice 1. 输入分钟输出对应的小时和分钟. #include #define MIN_PER_H 60 int main(void) { int mins, hours, minutes; printf("Convert mins to hours and minutes\n"); printf("Please enter the mins: \n"); scanf("%d", &mins); while (mins >…
Practice 1.输入名字和姓氏,以"名字,姓氏"的格式输出打印. #include int main(void) { char name[20]; char family[20]; printf("My Handsome Master, please enter your name: \n"); scanf("%s %s", &name, &family); //名字和姓氏一起读的话,需要先输入名字再输入姓氏,中间要有空白字…
第3章 流程控制语句 3.1程序的结构 计算机在解决某个具体问题时,主要有3种情况,分别是顺序执行所有的语句.选择执行部分语句和循环执行部分语句.程序设计中的3种基本结构为顺序结构.选择结构和循环结构.这3种结构的执行流程如图所示. 本章之前编写的多数实例采用的都是顺序结构.例如,定义一个字符串类型的变量,然后输出该变量,代码如下: mot_cn = "命运给予我们的不是失望之酒,而是机会之杯." # 使用双引号,字符串内容必须在一行 print(mot_cn) 3.2选择语句 Pyt…
实验报告 [实验目的] 1.掌握python中流程控制语句的使用,并能够应用到实际开发中. [实验条件] 1.PC机或者远程编程环境 [实验内容] 1.完成第三章流程控制语句实例01-09,实战一到实战四. 实例01:判断输入的是不是黄蓉所说的数 使用 if 语句判断用户输入的数字是不是黄蓉所说的除以三余二,除以五余三,除以七余二的数. 代码如下: 1 print("今有物不知其数,三三数之剩二,五五数之剩三,七七数之剩二,问几何?\n") 2 number = int(input(&…
本文地址:http://www.cnblogs.com/archimedes/p/cpp-primer-chapter1-ans.html,转载请注明源地址. [习题 1.3] 编一个程序,在标准输出上打印“Hello, World”. #include <iostream> using namespace std; int main() { cout<<"Hello, World\n"; ; } [习题 1.4]我们的程序利用内置加法操作符“+”来产生两个数的…
第7章 函数--C++的编程模块 1. 函数的返回类型不能是数组,但可以是其他任何一种类型,甚至可以是结构和对象.有趣的是,C++函数不能直接返回数组,但可以将数组作为结构或对象的组成部分来返回. 2. 在C++中括号为空意味着不指出参数.在ANSI C中,括号为空意味着不指出参数.在C++中,不指定参数列表时应该用省略号. void say_bye(-); 3.  数组名数组名解释为其第一个元素的地址有一些例外,首先,对数组名使用sizeof将得到整个数组的长度:其次,将地址运算符用于数组名时…
第13章 综合技术 13.1 使用CrashHandler来获取应用的Crash信息 (1)应用发生Crash在所难免,但是如何采集crash信息以供后续开发处理这类问题呢?利用Thread类的setDefaultUncaughtExceptionHandler方法!defaultUncaughtHandler是Thread类的静态成员变量,所以如果我们将自定义的UncaughtExceptionHandler设置给Thread的话,那么当前进程内的所有线程都能使用这个UncaughtExcep…
原文:<Programming WPF>翻译 第7章 5.可视化层编程 形状元素能提供一种便利的方式与图形一起工作,在一些情形中,添加表示绘图的元素到UI树中,可能是比它的价值更加麻烦.你的数据可能被构造以一种易于编写代码的方式--简单地表现一系列基于数据的绘图操作,而不是构造一棵对象树. WPF提供一个“可视化层”API,作为一个对形状元素较低级别的折中.(实际上,形状元素全都在可视化层得顶部被实现.)这个API使我们编写按需生成的代码. 可视化是一个可见的对象.WPF应用程序的外观是将它所…
第十三章 Perl的面向对象编程 by flamephoenix 一.模块简介二.Perl中的类三.创建类四.构造函数 实例变量 五.方法六.方法的输出七.方法的调用八.重载九.析构函数十.继承十一.方法的重载十二.Perl类和对象的一些注释 本章介绍如何使用Perl的面向对象编程(OOP)特性及如何构建对象,还包括继承.方法重载和数据封装等内容.一.模块简介    模块(module)就是Perl包(pachage).Perl中的对象基于对包中数据项的引用.(引用见第x章引用).详见http:…
第24章 并发和多核编程 第一部分并发编程 当我们写这本书的时候,CPU架构正在以比过去几十年间更快的速度变化. 并发和并行的定义 并发程序需要同时执行多个不相关任务.考虑游戏服务器的例子:它通常是由几十个组件组成,每个组件都与外部世界有着复杂的交互.一个组件可能处理多用户聊天;几个会将处理几个玩家的输入并回复他们状态的更新,而另一个执行物理计算. 并发程序的正确执行并不需要多核,尽管可能会提高性能和响应速度. 与此相反,一个并行程序解决了一个单一的问题.考虑一个尝试在单只股票的价格波动来预测下…
第十九章. 图形界面编程 import Tkinter top = Tkinter.Tk() hello = Tkinter.Label(top, text='Hello World!') hello.pack() quit = Tkinter.Button(top, text='QUIT',command=top.quit) quit.pack(fill=Tkinter.X, expand=1) Tkinter.mainloop()…
第三章:Python高级编程-深入类和对象 Python3高级核心技术97讲 笔记 3.1 鸭子类型和多态 """ 当看到一直鸟走起来像鸭子.游泳起来像鸭子.叫起来像鸭子,那么这只鸟就可以被称为鸭子. 这句话看上去有趣,却不太容易理解.接下来用实例来说明. """ # ============ Demo1 start ============= class Cat(object): def say(self): print("I am…
第九章:Python高级编程-Python socket编程 Python3高级核心技术97讲 笔记 9.1 弄懂HTTP.Socket.TCP这几个概念 Socket为我们封装好了协议 9.2 client和server实现通信 import socket client = socket.socket(socket.AF_INET,socket.SOCK_STREAM) client.connect(('127.0.0.1', 8000)) while True: re_data = inpu…
第十一章:Python高级编程-协程和异步IO Python3高级核心技术97讲 笔记 目录 第十一章:Python高级编程-协程和异步IO 11.1 并发.并行.同步.异步.阻塞.非阻塞 11.2 C10K问题和IO多路复用(select.poll.epoll) 11.2.1 C10K问题 11.2.2 Unix下五种I/O模型 11.3 select+回调+事件循环 11.4 回调之痛 11.5 什么是协程 11.5.1 C10M问题 11.5.2 协程 11.6 生成器进阶-send.cl…
学习总结 1.if…else…从语义上看就能出用途,跟其他语言没差多少,只需要记住,世界上最遥远的距离之一:我走if你却走else. 2.根据个人几年的编程经验,太多的if…else…嵌套会加大代码的可读性和维护难度.个人认为代码最好不要超过三层if…else…的嵌套,否则最好使用布尔值控制流程. 3.逻辑运算符优先级:!>&&>|| 4.运行到continue语句将导致剩余的迭代部分被忽略,开始下一次迭代.continue仅用于循环,而break语句用于循环和switch中.…
学习总结 1.循环的语法跟其他语言的没差多少,可能大多数语言都在C的基础上发展出来的,所以大同小异不奇怪. 2.在判断表达式里,C语言只有0被认为是假,所有非零值正整数都被认为真. #include <stdio.h> int main(){ ) printf("0 is true\n"); ) printf("1 is true\n"); ) printf("-1 is true\n"); ; } 运行结果: 1 is true -…
*****代码在Ubuntu g++ 5.31 / clang++ 3.8(C++11)下编写调试***** 每个C++程序必须有一个main( )函数,main( )函数的返回值也必须是int类型,操作系统通过调用main( )函数来运行C++程序. 1.函数格式 函数:C++的函数是一个能够完成一个功能的模块或者说是一段命名了的代码块. 完整函数的组成: ①返回类型:不一定有返回值,故不一定有返回类型 ②函数名:根据名字标识完成特定功能的模块,必须存在 //lambda匿名函数除外 ③形参列…
C++ Primer 第三章 标准库类型 3.1using声明 例: using namespace atd; using std::cin; 3.2string类型 初始化方式 string s1 默认构造函数,s1为空串 string s2(s1) 将s2初始化为s1的一个副本 string s3(“value”) 将s3初始化为一个字符串的副本 string s4(n, 'c') 将s4初始化为字符'c'的n个副本 getline读取整行文本 getline接受两个参数:一个是输入流对象和…
这是我对c++primer第二章的一个整理总结,算是比较适用于我自己吧,一小部分感觉不用提及的就省略了,只提了一下平时不注意,或者不好记住的内容. 排版太费劲了,直接放了图片格式.从自己的oneNote直接粘过来的. 这个排版还能再改改,等下午吧. 总结不易,转载注明出处,谢谢. http://www.cnblogs.com/linhaowei0389/…
本笔记写于2020年1月27日. 本系列文章参考的是<C Primer Plus>(第六版),其中里面会有笔者自己的相关补充. 以下示例均运行于macOS Catalina 10.15.2上,编译器为clang 11.0.0 PS:如果笔记中有任何的错误,请在下方评论中留言,我会及时回复并修改,谢谢 简单的C示例 首先来看一个非常简单的C程序示例 #include <stdio.h> int main(void) { int num; num = 1; printf("I…
第三章主要介绍了C++中标准库类型.主要讲到string和vector类型.在string类型中,能够很方便的操作字符串,应该要注意的地方就是它的字符串中元素的位置的类型是:size_type类型的数据,其中主要涉及到如何访问每一个字符串的字符:(下标法)for(string::size_type ix=0:ix!=s.size():++ix){}.(迭代器法)for(string::iterator iter=s.begin();iter!=s.end();++iter){}. 在vector…
C++ Primer书上这个例子讲的很不错,写写帮助自己理解标准库和智能指针. .h 文件内容 #include <fstream> #include <iostream> #include <vector> #include <string> #include <map> #include <set> #include <sstream> #include <memory> class QueryResult…
unique_ptr 一个unique_ptr拥有它所管理的对象,与shared_ptr不同,unique_ptr指向的对象只能有一个用户.当unique_ptr被销毁后,它所指向的对象也被销毁. 定义一个unique_ptr时,需要将其绑定到一个new返回的指针上,类似shared_ptr,初始化unique_ptr必须采用直接初始化形式: unique_ptr<double> p1; // p1指向一个double类型变量 unique_ptr<int> p2(new int(…
面向对象程序设计的核心思想是:数据抽象.继承和动态绑定. 数据抽象:将类的接口与实现分离: 继承:定义相似类型并对相似关系建模: 动态绑定:一定程度上上忽略相似类型间的区别,用同一方式使用它们. 1.继承 通过继承联系在一起的类构成层次关系.层次关系的最底层或者说根部叫做基类,直接或者间接从基类继承而来得到的类叫做派生类. 基类负责定义该层次上共有的特性,派生类在基类的基础上根据自身需求进行扩展. 在面向对象程序设计的继承中,基类将需要进行扩展的函数与原封不动直接继承的函数进行区分对待.需要进行…