![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
c
坤舆小菜鸡
学习学习,努力敲代码
展开
-
C/C++代码读取文件出现乱码解决办法
例如读取test.txt文件时出现乱码只需要在保存文件时,选择ANSI方式保存即可出现这种情况是因为编码方式存在差异,文件保存时默认UTF-8,而控制台的编码方式为ANSI再次打开就不是乱码了。...原创 2020-11-19 15:53:14 · 2104 阅读 · 0 评论 -
算法--编辑距离问题
该动态规划方程借鉴博客https://www.cnblogs.com/littlepanpc/p/7895810.html代码如下:#include<stdio.h>#include<string.h>//将A转换为B所用的最少字符操作数称为A到B的编辑距离,记为Shortest_Distance[A][B]char a[100];char b[100];int Shortest_Distance[100][100];int Edit_distance(int .原创 2020-11-13 16:47:37 · 183 阅读 · 0 评论 -
算法--集合划分问题
问题描述:n个元素的集合{1,2,.,n }可以划分为若干个非空子集。例如,当n=4 时,集合{1,2,3,4}可以划分为15个不同的非空子集如下:{1},{2},{3},{4}}, {{1,2},{3},{4}},{{1,3},{2},{4}}, {{1,4},{2},{3}},{{2,3},{1},{4}}, {{2,4},{1},{3}},{{3,4},{1},{2}}, {{1,2},{3,4}},{{1,3},{2,4}}, {{1,4},{2,3}},{{1,2,3},{4}},原创 2020-10-30 16:57:07 · 1172 阅读 · 0 评论 -
算法--半数集问题
问题描述:给定一个自然数n,由n 开始可以依次产生半数集set(n)中的数如下。(1) n∈set(n);(2) 在n 的左边加上一个自然数,但该自然数不能超过最近添加的数的一半;(3) 按此规则进行处理,直到不能再添加自然数为止。例如,set(6)={6,16,26,126,36,136}。半数集set(6)中有6 个元素。注意半数集是多重集。算法设计: 对于给定的自然数n,计算半数集set(n)中的元素个数。输入:6输出:6代码:#include<stdio.h>原创 2020-10-30 16:54:52 · 1298 阅读 · 0 评论 -
算法--众数问题
·问题描述: 给定含有n个元素的多重集合S,每个元素在S中出现的次数称为该元素的重数。多重集S中重数最大的元素称为众数。例如:S={1,2,2,2,3,5}。多重集S的众数是2,其重数是3.算法设计: 对于给定的由n个自然数组成的多重集S,计算S的众数和重数。数据输入: 输入数据由文件名为input.txt的文本文件提供。文件第一行为多重集S中元素的个数n;在接下来的n行中,每行有一个自然数。结果输出: 将计算结果输出到文件output.txt。输出文件有两行,第一行是众数,第二行是重数。输入:原创 2020-10-30 16:49:42 · 1569 阅读 · 1 评论 -
算法--有重复元素的排列问题
如果运行报错的话,就把for循环里面的int i挪到外面,因为我当时写的时候文件后缀名是cpp,用c做后缀的话就挪出来吧。#include<stdio.h>#include<stdlib.h>int n;int num=1;bool isEmpty(int a[],int l,int m,int r){ int i,j; for(i=l,j=m+1;i<=m,j<=r;i++,j++){ if(a[i]!=a[j]){ return false原创 2020-10-24 21:38:20 · 985 阅读 · 1 评论 -
too many arguments to function 'strcpy'解决办法
问题背景今天在学习C语言的字符串的拷贝函数,下图为知识点:还有第五条:是说可以复制字符串2的部分字符到字符数组1的前几个字符。语法:srtcpy(字符数组1,字符串2,整数)但是当我运行下图程序后,就报错了:是因为参数太多了,strcpy函数只有两个参数。问题解决在我查完资料后发现,嗯,没错,课件错了????????????真是个令人尴尬的事实,不过也告诉我们一个道理:不要盲目相信权威????咳咳,回归正题。所以解决办法是:神奇的strncpy函数语法:strncpy(字符数组1原创 2020-05-12 13:39:10 · 22531 阅读 · 5 评论 -
安装mingw-w64最最简单的办法
安装mingw-w64最最简单的办法就是:下载个devc++,自带mingw,从下载到安装只需一两分钟,占不了多大内存,并且还能自动设置路径。网址如果不愿意,也可以我的资源里领取。...原创 2020-04-02 14:43:23 · 8571 阅读 · 0 评论 -
C语言 笔记(函数)
函数封装与防御性程序设计函数封装使得外界对函数的影响仅限于几个入口参数。而函数对外界的影响也仅限于一个返回值和数组、指针类型的参数,不仅便于各个函数单独测试、排错,也便于多人合作开发程序。程序的健壮性:程序具有遇到不正确使用或非法数据输入时仍能保护自己避免出错的能力在函数的入口处增加对函数参数合法性的检查,就是一种常用的增强程序健壮性的方法。像这种在程序中增加一些代码,用于专门处理某些异常...原创 2020-03-18 22:50:44 · 584 阅读 · 0 评论 -
数据结构笔记(排序-1)
查找排序排序前提函数头有一个统一规范的格式void X_Sort ( ElementType A[] ,int N )X为排序算法的名称*N为正整数*只讨论基于比较的排序*只讨论内部排序(假设内存空间充分大,所有的数据都可以一次性导到内存空间)*稳定性:任意两个相等的数据,排序前后的相对位置不发生改变没有一种排序是任何情况下都表现最好的。冒泡排序void Bubble_So...原创 2020-03-10 09:44:27 · 116 阅读 · 0 评论 -
PTA 7-15 计算圆周率 (15分)
根据下面关系式,求圆周率的值,直到最后一项的值小于给定阈值。π/2 = 1 + 1/3 + 2!/3*5 + 3!/3*5*7 + ... + n!/3*5*7*...*(2n+1)+....输入格式:输入在一行中给出小于1的阈值。输出格式:在一行中输出满足阈值条件的近似圆周率,输出到小数点后6位。输入样例:0.01输出样例:3.132157正确的代码样例:...原创 2020-03-06 22:39:44 · 4045 阅读 · 1 评论 -
PTA 7-13 日K蜡烛图 (15分)
股票价格涨跌趋势,常用蜡烛图技术中的K线图来表示,分为按日的日K线、按周的周K线、按月的月K线等。以日K线为例,每天股票价格从开盘到收盘走完一天,对应一根蜡烛小图,要表示四个价格:开盘价格Open(早上刚刚开始开盘买卖成交的第1笔价格)、收盘价格Close(下午收盘时最后一笔成交的价格)、中间的最高价High和最低价Low。如果Close<Open,表示为“BW-Solid”(即“实心蓝白...原创 2020-03-06 19:56:37 · 278 阅读 · 0 评论 -
PTA 7-1 厘米换算英尺英寸 (15分)
如果已知英制长度的英尺foot和英寸inch的值,那么对应的米是(foot+inch/12)×0.3048。现在,如果用户输入的是厘米数,那么对应英制长度的英尺和英寸是多少呢?别忘了1英尺等于12英寸。输入格式:输入在一行中给出1个正整数,单位是厘米。输出格式:在一行中输出这个厘米数对应英制长度的英尺和英寸的整数值,中间用空格分开。输入样例:170输出样例:5 6代码样例:...原创 2020-03-05 11:01:33 · 522 阅读 · 0 评论 -
PTA 7-4 BCD解密 (10分)
BCD数是用一个字节来表达两位十进制的数,每四个比特表示一位。所以如果一个BCD数的十六进制是0x12,它表达的就是十进制的12。但是小明没学过BCD,把所有的BCD数都当作二进制数转换成十进制输出了。于是BCD的0x12被输出成了十进制的18了!现在,你的程序要读入这个错误的十进制数,然后输出正确的十进制数。提示:你可以把18转换回0x12,然后再转换回12。输入格式:输入在一行中给出一个...原创 2020-03-04 23:50:09 · 371 阅读 · 0 评论 -
C语言 输出二进制数
#include<stdio.h>int Binary_number(int dec){ int result = 0,temp = 1,yushu = 0; while(1){ yushu = dec%2; dec/=2; result+=yushu*temp; temp*=10; if(dec<2) { result+=dec*temp;...原创 2020-03-04 23:42:35 · 4390 阅读 · 1 评论 -
数组指针与指针数组
草稿原创 2020-02-22 21:54:32 · 160 阅读 · 0 评论 -
在Linux环境下运行C语言程序
代码如下:gcc demo.c -o demo1说明:1>编译当前目录下、名字叫做demo.c的c源文件;2>在当前目录下、生成名字叫demo1(这个名字可以自己随便写、符合linux命名规则就行)的可执行程序;关于运行:用ls -l 命令,可以看到当前目录下有一个文件、名字叫demo1,就是刚刚编译得到的文件;使用命令“./demo1”既可运行(无双引号、双引号是用来说...原创 2020-01-08 16:20:39 · 1507 阅读 · 1 评论 -
C语言输入输出格式
1.转换说明符%c 字符#include <stdio.h>#include <stdlib.h>int main(){ char a; scanf("%c",&a); printf("%c\n",a); system("pause"); return 0;}%d 有符号十进制整数#include ...原创 2019-12-18 23:12:21 · 4507 阅读 · 0 评论 -
Process returned 4258096 (0x40F930),codeblocks运行程序后直接就结束了,输出语句也不执行。。。
就类似于下面这个情况:Process returned 4258096 (0x40F930)就很难受。。。但当有了输入的时候,输出就冒出来了一没输入,输出就又死了,就更难受了。。。另外加上system(“pause”);也能活。。。还没找到 解决办法,找到就更新!...原创 2019-12-18 21:20:53 · 3041 阅读 · 8 评论 -
C语言常用快捷键
Ctrl+W :close current file(关闭当前文件)Ctrl+Q :退出 Code::BlocksCtrl+J :Auto-Complete(自动补齐关键字代码框架,例如 while ();)Shift+F2 :显示 / 隐藏左侧的 ManagementF2 :显示 / 隐藏底端的 Logs & OthersCtrl+F9 编译F9 编译运行...原创 2019-12-18 20:27:52 · 6764 阅读 · 1 评论 -
continue和break的区别
continue 语句和 break 语句的区别是:continue 语句只结束本次循环,而不是终止整个循环。break 语句则是结束整个循环过程,不再判断执行循环的条件是否成立。而且,continue 只能在循环语句中使用,即只能在 for、while 和 do…while 中使用,除此之外 continue 不能在任何语句中使用。continue 不能在 switch 中使用,除非 sw...原创 2019-12-18 16:54:21 · 380 阅读 · 0 评论 -
C语言中关于变量连续赋值的问题
考试的时候遇到一个判断题,问这两个语句是否正确:" int x=y=2; "" a=b=c=2; "答案是:第一个错误,第二个正确。原因:C语言中不可以在定义变量时对变量进行连续赋值。因为" = "运算符是从右至左结合,先把2赋值给y,但此时y还没有定义,所以违反了c中先定义后使用原则。而后者可以看成" c=2; b=c; a=b; "先对c赋值...原创 2019-12-09 17:22:13 · 13947 阅读 · 5 评论 -
关于在notepad++上编译c的问题
最近想用编译器来写c语言,便开始寻找方法......原创 2019-08-13 13:57:08 · 339 阅读 · 0 评论 -
头文件stdio与stdlib.h的区别
头文件#include<stdio.h>与#include<stdlib.h>的区别stdlib 头文件即standard library标准库头文件stdlib 头文件里包含了C、C++语言的最常用的系统函数该文件包含了的C语言标准库函数的定义stdlib.h里面定义了五种类型、一些宏和通用工具函数。类型例如size_t、wchar_t、div_t、ldiv_t...转载 2019-03-27 15:53:56 · 6733 阅读 · 0 评论