
C/C++
我来试试
这个作者很懒,什么都没留下…
展开
-
题目:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?请输出所有组合
题目:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?请输出所有组合一种循环较少的代码实例:#include int main(){ int i,j,k;//分别表示百、十、个位 for(i=1;i<5;i++){ for(j=1;j<5;j++) { if(i==j){ continue; } else{ for原创 2017-10-17 07:30:47 · 2148 阅读 · 0 评论 -
用栈将十进制数转行成二进制数
用栈将十进制数转行成二进制数用栈实现代码:#includeusing namespace std;#define maxSize 10int baseTrams(int N){ int i,result=0; int stack[maxSize],top=-1; while(N!=0){ i=N%2; N=N/2; stack[++top]=i; } while原创 2017-10-25 07:35:37 · 3377 阅读 · 0 评论 -
二叉树三种遍历代码实现
二叉树三中遍历代码实现实现代码:#include #include typedef struct BiTNode{ int data; BiTNode *lchild,*rchild;}BiTNode,*BiTree;void Insert(BiTNode **tree,int val){ BiTNode *temp=NULL; if(!(*tree)){ temp =原创 2017-11-20 06:55:15 · 6085 阅读 · 4 评论 -
使用结构体(struct)将两个复数相加
使用结构体(struct)将两个复数相加具体代码如下: #include typedef float F;//方便以后修改精度 typedef struct complex{ F real; F imag; }complex; complex add(complex a1,complex a2); int main(){ complex b1,b2,t原创 2017-10-16 23:25:03 · 12248 阅读 · 3 评论 -
古典问题(兔子生崽)
古典问题(兔子生崽)题目:古典问题(兔子生崽):有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?(输出前40个月即可)程序分析:兔子的规律为数列1,1,2,3,5,8,13,21....,即下个月是上两个月之和(从第三个月开始)。三种方法实现:方法一代码#includein原创 2017-10-18 22:40:16 · 2136 阅读 · 0 评论 -
查找k,查到输出k位置,否则输出0,数组从a[1]开始
题目:查找k,查到输出k位置,否则输出0,数组从a[1]开始 实现代码:#include using namespace std;int locate1(int a[],int k){ int i=k; while(i>=1&&a[i]!=k) i--; return i;} int main(int argc, char *argv[]){ int a[6],i=0原创 2017-11-01 22:43:14 · 2362 阅读 · 0 评论 -
将字符串写入文件
将字符串写入文件具体代码如下(注意首先在文件目录下建立test.txt文件):#include #include /* exit() 函数 */int main(){ char sentence[1000]; FILE *fptr; fptr = fopen("test.txt", "w"); if(fptr == NULL) { p原创 2017-10-16 23:41:58 · 549 阅读 · 0 评论 -
顺序表插入数据算法
顺序表插入数据算法实现代码:#include using namespace std;#define maxSize 100typedef struct{ int data[maxSize]; int length;}Sqlist;int insert(Sqlist &L,int p,int e){ int i; if(pL.length+1||L.length==max原创 2017-11-03 23:38:56 · 3586 阅读 · 1 评论 -
有一个已经排好序的数组。现输入一个数,要求按原来的规律将它插入数组中。
题目:有一个已经排好序的数组。现输入一个数,要求按原来的规律将它插入数组中。实现代码:#includeint main(){ int opo[11]={1,4,6,9,13,16,19,28,40,100}; int a,b,c,e; printf("原始数组:"); for(a=0;a<10;a++)printf("%d ",opo[a]);原创 2017-10-22 23:26:35 · 11726 阅读 · 2 评论 -
冒泡排序将10个无序数按照从小到大输出
冒泡排序将10个无序数按照从小到大输出具体代码:#includeint main(){ int a[10],i,j,min,temp; printf("请输入10个数:\n"); for(i=0;i<10;i++){ scanf("%d",&a[i]); } for(i=0;i<10;i++){ min=i; for(j=i;j<10;j++){ if(a[原创 2017-10-22 00:12:45 · 1301 阅读 · 0 评论 -
判断元音还是辅音
判断元音还是辅音具体代码: #include int main(){ int low,up; char c; printf("请输入一个字母:"); scanf("%c",&c); low=(c=='a'||c=='e'||c=='i'||c=='o'||c=='u'); up=(c=='A'||c=='E'||c=='I'||c=='O'||c=='U');原创 2017-10-16 12:41:21 · 1033 阅读 · 0 评论 -
循环输出 26 个字母
循环输出 26 个字母具体代码: #include int main(){ char c; for(c='A';c<'Z';++c){ printf("%c ",c); } return 0; }输出结果:A B C D E F G H I J K L M N O P Q R S T U V W X Y原创 2017-10-16 12:54:58 · 9148 阅读 · 0 评论 -
输出一个数组第二大的数
题吗:输出一个数组第二大的数实现代码:#include using namespace std;int main(int argc, char *argv[]){ int i,a[10]; int max,preMax,temp; cout<<"输入10个数:"; for(i=0;i<10;i++){ cin>>a[i]; } max=preMax=a[0]; fo原创 2017-11-02 07:12:22 · 1654 阅读 · 1 评论 -
算法:求一元二次方程的根
算法:求一元二次方程的根实现代码:#include #include int solution(double a,double b,double c,double &x1,double &x2) { double d; d=b*b-4*a*c; if (d>0) { x1=(-b+sqrt(d))/(2*a); x2=(-b-sqrt(d))/(2*a); retu原创 2017-12-03 23:28:55 · 5245 阅读 · 1 评论 -
快速排序实现
快速排序实现:具体代码:#include void QuickSort(int a[],int I,int J){ int temp; int i=I,j=J; if(i<j){ temp=a[i]; while(i!=j){ while(itemp) --j;//从右开始找比temp小的数(准备放到左边去) if(i<j){ a[i]=a[j];原创 2017-11-23 23:31:54 · 187 阅读 · 0 评论 -
顺序表删除数据元素算法
顺序表删除数据元素算法实现代码:#include using namespace std;#define maxSize 100typedef struct{ int data[maxSize]; int length;}Sqlist;int delete1(Sqlist &L,int p,int e){ int i; if(pL.length){ return 0;原创 2017-11-03 23:47:40 · 4574 阅读 · 0 评论 -
将一个正整数分解质因数
将一个正整数分解质因数实现代码:#includeint main(){ int n,i,j; printf("输入一个正整数:\n"); scanf("%d",&n); for(i=2;i<=n;i++){ while(n%i==0){ printf("%d",i); n/=i; if(n!=1) printf("*"); } } printf("\原创 2017-10-18 23:20:32 · 452 阅读 · 0 评论 -
尾插法建立单链表的算法
头插法建立单链表的算法实现代码:#include #include using namespace std;#define maxSize 100typedef struct LNode{ int data; struct LNode *next;}LNode;void createListR(LNode *&C,int a[],int n){ LNode *s,*r;原创 2017-11-04 07:18:20 · 2169 阅读 · 0 评论 -
输出200以内所有素数(质数),5个一换行
输出200以内所有素数(质数),10个一换行具体实现代码:#include#includeint main(){ int i,j,k,count=0; for(i=2;i<200;i++) { k=sqrt(i); //如果i不能被2~√i间任一整数整除,i必定是素数 for(j=2;j<=k;j++)原创 2017-10-17 23:46:34 · 19974 阅读 · 1 评论 -
猴子吃桃问题
题目: 猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个 第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下 的一半零一个。到第10天早上想再吃时,见只剩下一个桃子了。请输出这十天当天的桃子数。实现代码:#includeint main(){ int x=1,i; for(i=10;i>=1;i--){原创 2017-10-19 23:51:23 · 269 阅读 · 0 评论 -
计数排序的实现
计数排序的实现计数排序:记录比一个元素小的元素数目,来确定这个元素在数组中的位置实现代码:#include void Sort(int a[],int b[],int n){ int i,j,count; for(i=0;i<n;++i){ count=0; for(j=0;j<n;++j){ if(a[j]<a[i]) ++count; } b[c原创 2017-11-23 22:55:31 · 227 阅读 · 0 评论 -
创建单链表算法
创建单链表算法实现代码:#include "stdio.h"#include "stdlib.h"typedef int datatype;typedef struct LNode{ datatype data; struct LNode *next;}LNode;int main(){ LNode *head,*p1; int i=1,n; printf("输入所创建原创 2017-11-04 23:27:23 · 356 阅读 · 0 评论 -
判断回文数
判断回文数具体代码: #include int main(){ int a=0,b,c,d; int n; printf("输入一个整数:"); scanf("%d",&n); d=n; while(n!=0){ b=n%10; a=a*10+b; n/=10; } if(d==a){ printf("%d是回文数\n",d);原创 2017-10-16 13:16:27 · 357 阅读 · 0 评论 -
合并两个单链表算法
合并两个单链表算法先创建一个有2个结点单链表,按照递减顺序输入(使用的是头插法,输入序列与输出序列顺序相反 ),然后同样创建一个8个数结点的递减单链表最后输出合并后按非递减顺序的单链表实现代码:#include #include using namespace std; #define maxSize 100 typedef struct LNode{原创 2017-11-05 07:21:42 · 2226 阅读 · 0 评论 -
输出10个100以内的随机数(c实现)
输出10个100以内的随机数(c实现)实现代码:#include #include #include /*用到了time函数,所以要有这个头文件*/#define MAX 10int main( void){ int number[MAX] = {0}; int i; srand((unsigned) time(NULL)); //设置种子 f原创 2017-10-23 23:37:33 · 6201 阅读 · 0 评论 -
利用递归方法输出1~10所有整数的阶乘
利用递归方法输出1~10所有整数的阶乘实现代码:#include int recursion(int a){ int sum; if(a==1){ sum=1; }else{ sum=a*recursion(a-1); } return sum;} ;int main(){ int i,n; printf("输入一个正整数:\n"); scanf("%d",原创 2017-10-20 07:48:47 · 7876 阅读 · 0 评论 -
输出九九乘法表
输出九九乘法表具体代码: #include int main(){ int i,j; for(i=1;i<10;i++){ for(j=1;j<i+1;j++){ printf("%d*%d=%d ",j,i,i*j); } printf("\n"); } return 0; }原创 2017-10-16 12:48:13 · 398 阅读 · 0 评论 -
斐波那契装箱问题
题目:斐波那契装箱问题说明:题目来源《国际大学生程序设计竞赛中山大学内部选拔真题解二》 遗留问题:这本书的第一题,题目测试和解答测试数据不一致,所以应该是解答有误,但我现在也想不到解决办法,就先贴出来,以后有思路过来完成它 题目: 题目给出测试数据: 这本书的解答代码(有修改):#include <cstdio> #define maxn 64int x[m...原创 2018-03-22 11:02:45 · 256 阅读 · 0 评论 -
typedef的用法
C 语言提供了 typedef 关键字,您可以使用它来为类型取一个新的名字定义AARON:typedef unsigned char AARON;使用:AARON a,b;按照惯例,定义时会大写字母,以便提醒用户类型名称是一个象征性的缩写,但您也可以使用小写字母具体代码示例:#include #include typedef struct Books{ cha原创 2017-10-15 12:47:05 · 746 阅读 · 0 评论 -
C++ 预处理器
C++ 预处理器预处理器是一些指令,指示编译器在实际编译之前所需完成的预处理。所有的预处理器指令都是以井号(#)开头,只有空格字符可以出现在预处理指令之前。预处理指令不是 C++ 语句,所以它们不会以分号(;)结尾。我们已经看到,之前所有的实例中都有 #include 指令。这个宏用于把头文件包含到源文件中。C++ 还支持很多预处理指令,比如 #include、原创 2017-11-09 23:31:35 · 251 阅读 · 0 评论 -
Poj1002解题报告
Poj1002解题报告题目: DescriptionBusinesses like to have memorable telephone numbers. One way to make a telephone number memorable is to have it spell a memorable word or phrase. For example, you can ca...原创 2018-03-29 18:56:47 · 756 阅读 · 0 评论 -
C++中sort函数用法
C++中sort函数用法排序示例: 输入两个数n,t,其中n是待排的结构体个数,t=0代表用降序排序,t = 1表示用升序排序 例如这样: 例示: jack 70 peter 96 Tom 70 smith 67 从高到低 成绩 peter 96 jack 70 T...原创 2018-03-22 16:12:40 · 257 阅读 · 0 评论 -
C++ STL 教程
C++ STL 教程在前面的章节中,我们已经学习了 C++ 模板的概念。C++ STL(标准模板库)是一套功能强大的 C++ 模板类,提供了通用的模板类和函数,这些模板类和函数可以实现多种流行和常用的算法和数据结构,如向量、链表、队列、栈。C++ 标准模板库的核心包括以下三个组件:组件描述容器(Containers)容器是原创 2017-11-13 08:01:35 · 207 阅读 · 0 评论 -
C++ Web 编程
C++ Web 编程示例代码:#include using namespace std; int main (){ cout << "Content-type:text/html\r\n\r\n"; cout \n"; cout \n"; cout Hello World - 第一个 CGI 程序\n"; cout \n"; cout \n原创 2017-11-12 23:30:40 · 513 阅读 · 0 评论 -
C++ 信号处理
C++ 信号处理信号是由操作系统传给进程的中断,会提早终止一个程序。在 UNIX、LINUX、Mac OS X 或 Windows 系统上,可以通过按 Ctrl+C 产生中断。有些信号不能被程序捕获,但是下表所列信号可以在程序中捕获,并可以基于信号采取适当的动作。这些信号是定义在 C++ 头文件 中。信号描述SIGABRT原创 2017-11-11 08:38:51 · 292 阅读 · 1 评论 -
C++ 数据抽象
C++ 数据抽象数据抽象是指,只向外界提供关键信息,并隐藏其后台的实现细节,即只表现必要的信息而不呈现细节。数据抽象是一种依赖于接口和实现分离的编程(设计)技术。C++ 程序中,任何带有公有和私有成员的类都可以作为数据抽象的实例。具体示例:#includeusing namespace std;class Adder{ public: Adder(i原创 2017-11-02 07:26:25 · 298 阅读 · 0 评论 -
栈——判断栈的入出栈序列是否合法
栈——判断栈的入出栈序列是否合法I为入栈,O为出栈,如IOIOIO实现代码:#includeusing namespace std;int judge1(char ch[]){ int i=0; int I=0,O=0;; while(ch[i]!='\0'){ if(ch[i]=='I') ++I; if(ch[i]=='O') ++O; i原创 2017-10-24 23:41:08 · 812 阅读 · 0 评论 -
C++数组的使用
C++数组的使用一、Array 直接初始化 char 数组是特殊的,这种初始化要记得字符是以一个 null 结尾的。实例char a1[] = {'C', '+', '+'}; // 初始化,没有 null char a2[] = {'C', '+', '+', '\0'}; // 初始化,明确有 null char a3[] = "C++"原创 2017-10-24 23:07:12 · 342 阅读 · 0 评论 -
C++ 模板
C++ 模板模板是泛型编程的基础,泛型编程即以一种独立于任何特定类型的方式编写代码。模板是创建泛型类或函数的蓝图或公式。库容器,比如迭代器和算法,都是泛型编程的例子,它们都使用了模板的概念。每个容器都有一个单一的定义,比如 向量,我们可以定义许多不同类型的向量,比如 vector 或 vector 。函数模板模板函数定义的一般形式如下所示:原创 2017-11-09 22:55:45 · 153 阅读 · 0 评论 -
C++ 命名空间
C++ 命名空间命名空间专门作为附加信息来区分不同库中相同名称的函数、类、变量等。使用了命名空间即定义了上下文。本质上,命名空间就是定义了一个范围。定义命名空间命名空间的定义使用关键字 namespace,后跟命名空间的名称,如下所示:namespacenamespace_name{// 代码声明}为了调用带有命名原创 2017-11-09 22:34:53 · 194 阅读 · 0 评论