
笔记
FFFade_
XMU.2021.
展开
-
将IEEE制浮点数转换为十进制
题目:按4字节浮点数格式用0和1组成的字符串从键盘输入,转换为十进制数显示。例:输入0 1000 0100 1100 1100 1000 1111 0101 110,显示57.57。作业碰到了这题,在网上没找到可以直接贴的答案www,拖了很久终于写了(虽然还是没有结合位运算联合体之类的知识点)。首先,先了解一下IEEE制的浮点数存储方式:可以看到一共分为三部分:一、第1位 符号位 0表示正数,1表示负数;二、第2~9位原创 2022-06-25 17:42:45 · 5068 阅读 · 0 评论 -
选数 递归求和
借鉴:#include <stdio.h>#include <math.h>int a[20],b[20],sum=0;int n,k,cur=0,pre,cnt=0;int isprime(int num){ int i; for(i=2; i<=sqrt(num); i++) if(num%i==0) break; if(i>sqrt(num)) return 1; return 0;}void chooseands.原创 2021-11-12 21:31:03 · 410 阅读 · 0 评论 -
编译错误收集
pointer to a function used in arithmetic当把abs( i ) 写成 abs[ i ] 时会出现这个错误提示原创 2021-11-09 09:14:45 · 111 阅读 · 0 评论 -
几何级数的计算机验证法
/*跳出循环条件 fabs(z-y)>=1e-6 与 fabs(z-y) <1e-6 不同*/几何级数的计算机验证法描述从前有棵树,叫高数,上面挂了许多人!这个传说一直言传至今!不过在小明看来,他肯定不会是那个会挂的人,他比其他同学提前预习了后面的章节,其中,他看了几何级数\frac{1}{1-x}=\sum_{n=0}^\infty x^n, |x| \lt 11−x1=∑n=0∞xn,∣x∣<1从理论上证明,他已经看懂了。但是,他想到,既然自己数学计算机的,原创 2021-11-03 16:58:06 · 644 阅读 · 0 评论 -
049 字符替换分段排序输出
1.最最重要的一定是先要好好审题,再大致列一下思路和框架2.函数atoi()可以将字符串转换为整数,并且忽略开头的0 头文件是stdlib.h 函数memset可以用来清空字符串 memset(a,0,sizeof(a));3.最后一段没有碰到‘5’没法录入可以一开始在字符串后面添加‘5’4.还有一个测试点没过#include<stdio.h>#include<string.h>#include<stdlib.h>int ...原创 2021-10-18 12:41:23 · 149 阅读 · 0 评论 -
关于数组的一些注意点
像a[1000000]这种开的太大的不要放在main函数里,应该放全局。原创 2021-10-17 21:03:39 · 81 阅读 · 0 评论 -
判断输入为空的方法
整数: while(scanf("%d",&a)!=EOF) ...字符串: while(gets(s)!=NULL)...原创 2021-10-17 14:55:35 · 568 阅读 · 0 评论 -
字母大小写转化
1.利用ascll码加加减减来实现转换。2.函数tolwer语法: #include <ctype.h> int tolower( int ch ); 功能:函数字符ch的小写形式。toupper语法: #include <ctype.h> int toupper( int ch ); 功能:函数字符ch的大写形式。来源:知乎猪学长...原创 2021-10-17 14:53:27 · 195 阅读 · 0 评论 -
宏定义命令define
#define 大写字母 值不用写=号原创 2021-10-17 12:00:41 · 125 阅读 · 0 评论 -
浮点数比大小
浮点数由于存储的截断,导致末尾精度不足。若由x==y判定,则未必输出正确的结果。可以用fabs(x-y)<=1e-6来判断。但是这个也不准确,不过目前差不多够用。转载 2021-10-17 08:57:23 · 199 阅读 · 0 评论 -
C语言快排函数的使用
要点1:头文件#include<stdio.h>#include<stlib.h> //包含qsort函数要点2:qsort函数的参数//以整形数组a[]为例,排序前n个qsort(a,n,sizeof(a[0],cmp);//四个参数依次为:数组名,排n项,单个数据的内存占用大小,排序的升降要点3:cmp函数//以整形为例int cmp(const void *a,const void *b){ return *(int *)a.原创 2021-10-17 08:11:25 · 523 阅读 · 0 评论 -
字符串的一些知识点
当输入的长度超出当前数组长度时,会覆盖掉后面的地址。#include<stdio.h>int main(){ char str[2][5]; scanf("%s",str[0]); printf("%s",str[1]); return 0; } 字符数组输入/输出时,可以用scanf printf + 数组名...原创 2021-10-13 14:46:39 · 90 阅读 · 0 评论 -
16进制的加法
16进制的加法1.不需要先转换成十进制2.llx3.负数的处理,计算机内部取反+1与oj不符形式上加个负号#include<stdio.h>int main(){ long long int a, b; while(scanf("%llX %llX",&a, &b) !=EOF){ if(a+b < 0){ printf("-%llX\n",(-a-b)); }原创 2021-10-12 17:37:56 · 761 阅读 · 0 评论