- 博客(13)
- 收藏
- 关注
原创 自学Python第二天:函数
使用def语句,依次写出函数名、括号、括号中的参数和冒号: ,使用def语句,依次写出函数名、括号、括号中的参数和冒号:将函数写在一个文件里时,用 from 文件名 import 函数名 来导入函数pass语句定义一个什么事也不做的空函数数据类型检查可以用内置函数**isinstance()**实现...
2021-07-17 08:28:34
134
原创 听课笔记:数组
数组变量c99之前必须是常量所有单元的类型相同数组大小确定后不能改变程序中运用数组经历的环节a 定义数组大小b 定义数组c 初始化数组d 数组参与运算e 遍历数组输出数组的集成初始化:不用给出数组大小,直接给出元素的初始值给数组中的某些元素定位适合元素分布比较稀疏的(其他地方会自动补全0)int a[10]={ [1] = 2,4,[5] = 3}输出:0 2 4 0 0 3 0 0 0 0 0sizeof可以给出整个数组占据的内容的大小,单位为字节可以用 **sizeof(a.
2021-03-18 20:39:56
107
原创 找呀找呀找方法 找到递归好方法
使用函数输出指定范围内的Fibonacci数本以为自己的代码已经写的算简便,就差一个结尾的空格如何去掉的问题,到网上一看,发现还是写麻烦了首先fib函数,网上的方法太巧妙了,函数套函数int fib( int n ){ if(n==1||n==2) return 1; else return fib(n-1)+fib(n-2);}和我的土方法一比显得巧妙很多int fib( int n ){ int i=1,j=1,t=0,cnt=2; wh
2021-03-13 19:03:22
123
原创 分类统计字符个数
void StringCount( char s[] );题目给的函数是放在数组中的字符,我一开始写的时候没有考虑到数组问题,还是按原来的方法一样,用ASCii码来判断,但这是不行的if(s>=65&&s<=90||s>=97&&s<=122) let++;else if(s>=48&&s<=57) dig++;else if(s==32||s==10) blk++;else otr
2021-03-13 18:52:35
184
原创 最大范围不通过
习题6-3 使用函数输出指定范围内的完数只有最大范围不通过,后来查阅发现,1不是完数(某自然数除它本身以外的所有因子之和等于该数,则该数被称为完数),如果在factorsum函数中,不把1排除,那么会影响程序通过int factorsum( int number ){ int i,sum=1;//这么写会判断1为完数,导致测试不通过 for(i=2;i<number;i++){ if(number%i==0) sum+=i; }
2021-03-13 17:42:10
98
原创 循环套循环,效率真的慢
double funcos( double e, double x ){ double sum=0.0,mul,res,mid=1.0; int i,j,k,cnt; for(i=0,cnt=1;mid>=e;i=i+2,cnt++,mul=1.0,res=1.0){ for(j=0;j<i;j++){ mul*=x; } for(k=1;k<=i;k++){ res*=
2021-03-13 15:54:39
305
原创 函数
1.代码复制是程序质量不良的表现,所以需要用函数2.函数是一块代码,接受一零个或多个参数,做一件事,并返回零个或多个值3,void 没有 不返回任何值4 有了圆括号才表明他是函数5 单一出口理念 最好不要多个出口6 如果函数有返回值,必须使用带值的return7 函数原型(函数头带分号) 告诉编译器函数的名称,参数,返回类型8 函数原型可以不写参数名称(int a ,int b)9 c语言在调用函数时,永远只能传值给函数10 每个函数都有自己的变量空间,参数也储存在这个独立空间中,和其他函
2021-02-09 11:19:58
110
原创 return 0在程序中的影响
今天遇到这样一道题在借鉴了别人的做法后终于写出了(其实是抄出了)代码这是第一版#include<stdio.h>int main(){ char gh; int x1,x2,sum=0; scanf("%d",&x1); while((gh=getchar())!='='){ scanf("%d",&x2); if(gh=='/'&&x2==0){ printf("ERROR\n");
2021-02-06 18:06:50
520
原创 猴子吃桃
用逆推法我的写法#include<stdio.h>int main(){ int total=3,n; scanf("%d",&n); int i,j; for(i=2,j=1;j<n;j++){ total*=i; } total=total-2; printf("%d",total); return 0;}最后答案没有问题,但是可以看出来i其实并没有用,直接改成total*=2也可,省
2021-02-05 17:56:23
90
原创 今日听课笔记
1.break和comtinue相同:只能对他所在的那层循环做不同:break导致循环结束,进入下面的语句中continue:不会再做循环体接下来的语句,但是会继续步进,判断条件,继续进入下一轮的循环2.跳出多层循环的方法a. 接力break用if语句判定,如果是,则breakb. gotogoto 要跳到out所指的地方去3.在除号的两边有一个是浮点数,他会把另外一个也变成是浮点数,就可以得到一个浮点数的运算结果。1 / i 当i比1大时,结果是01.0 / i 此时i自动
2021-02-02 16:43:59
106
原创 快速幂
今天在做题时学习了一种新的求幂方法,记录下来快速幂可以用位运算来实现&: 二进制“与”(都为1时,结果是1,否则是0。)b & 1:取b二进制的最低位,判断和1是否相同,相同返回1,否则返回0a >>= b:将 a 中的位向右移动 b 次(每一次移动都表示“除以 2”)b >>=1:把b的二进制右移一位,即去掉其二进制位的最低位常规求幂int pow1(int a,int b){int i,res=1;for(i=1;i<=b;i++){
2021-01-29 09:39:03
283
原创 运行超时怎么办
项目场景:PTA习题4-6 水仙花数问题描述:在程序测试时,输入最大位数(7位)被告知运行超时此为第一版代码#include<stdio.h>#include<math.h>int main(){ int n,x,y,i,j,sum=0; scanf("%d",&n); for(i=pow(10,n-1);i<pow(10,n);i++,sum=0) { j=i; for(x=1;x<=n;x
2021-01-28 19:18:37
14252
原创 精度问题
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录项目场景:问题描述:原因分析:解决方案:一、pandas是什么?二、使用步骤1.引入库2.读入数据总结项目场景:提示:这里简述项目相关背景:例如:项目场景:示例:通过蓝牙芯片(HC-05)与手机 APP 通信,每隔 5s 传输一批传感器数据(不是很大)问题描述:提示:这里描述项目中遇到的问题:例如:数据传输过程中数据不时出现丢失的情况,偶尔会丢失一部分数据APP 中接收数据代码:@Override
2021-01-27 16:57:10
205
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人