C/C++小实例
我来试试
这个作者很懒,什么都没留下…
展开
-
输出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 · 19431 阅读 · 1 评论 -
栈——判断栈的入出栈序列是否合法
栈——判断栈的入出栈序列是否合法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 · 776 阅读 · 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 · 3331 阅读 · 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 · 1603 阅读 · 1 评论 -
C++ 信号处理
C++ 信号处理信号是由操作系统传给进程的中断,会提早终止一个程序。在 UNIX、LINUX、Mac OS X 或 Windows 系统上,可以通过按 Ctrl+C 产生中断。有些信号不能被程序捕获,但是下表所列信号可以在程序中捕获,并可以基于信号采取适当的动作。这些信号是定义在 C++ 头文件 中。信号描述SIGABRT原创 2017-11-11 08:38:51 · 270 阅读 · 1 评论 -
使用结构体(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 · 12060 阅读 · 3 评论 -
将字符串写入文件
将字符串写入文件具体代码如下(注意首先在文件目录下建立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 · 518 阅读 · 0 评论 -
题目:有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 · 2115 阅读 · 0 评论 -
C++ 数据封装
C++ 数据封装 数据封装是一种把数据和操作数据的函数捆绑在一起的机制,数据抽象是一种仅向用户暴露接口而把具体的实现细节隐藏起来的机制。 C++ 通过创建类来支持封装和数据隐藏(public、protected、private)。我们已经知道,类包含私有成员(private)、保护成员(protected)和公有成员(public)成员。默认情况原创 2017-11-03 11:51:58 · 305 阅读 · 0 评论 -
C++ 接口(抽象类)
C++ 接口(抽象类) 设计抽象类(通常称为 ABC)的目的,是为了给其他类提供一个可以继承的适当的基类。抽象类不能被用于实例化对象,它只能作为接口使用。如果试图实例化一个抽象类的对象,会导致编译错误。 因此,如果一个 ABC 的子类需要被实例化,则必须实现每个虚函数,这也意味着 C++ 支持使用 ABC 声明接口。如果没有在派生类中重载纯虚函数,就尝原创 2017-11-03 12:26:40 · 265 阅读 · 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 · 3532 阅读 · 1 评论 -
顺序表删除数据元素算法
顺序表删除数据元素算法实现代码:#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 · 4523 阅读 · 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 · 322 阅读 · 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 · 2123 阅读 · 0 评论 -
合并两个单链表算法
合并两个单链表算法先创建一个有2个结点单链表,按照递减顺序输入(使用的是头插法,输入序列与输出序列顺序相反 ),然后同样创建一个8个数结点的递减单链表最后输出合并后按非递减顺序的单链表实现代码:#include #include using namespace std; #define maxSize 100 typedef struct LNode{原创 2017-11-05 07:21:42 · 2182 阅读 · 0 评论 -
算法:求一元二次方程的根
算法:求一元二次方程的根实现代码:#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 · 5151 阅读 · 1 评论 -
计数排序的实现
计数排序的实现计数排序:记录比一个元素小的元素数目,来确定这个元素在数组中的位置实现代码:#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 · 204 阅读 · 0 评论 -
快速排序实现
快速排序实现:具体代码:#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 · 159 阅读 · 0 评论 -
C++数组的使用
C++数组的使用一、Array 直接初始化 char 数组是特殊的,这种初始化要记得字符是以一个 null 结尾的。实例char a1[] = {'C', '+', '+'}; // 初始化,没有 null char a2[] = {'C', '+', '+', '\0'}; // 初始化,明确有 null char a3[] = "C++"原创 2017-10-24 23:07:12 · 317 阅读 · 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 · 342 阅读 · 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 · 9010 阅读 · 0 评论 -
古典问题(兔子生崽)
古典问题(兔子生崽)题目:古典问题(兔子生崽):有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?(输出前40个月即可)程序分析:兔子的规律为数列1,1,2,3,5,8,13,21....,即下个月是上两个月之和(从第三个月开始)。三种方法实现:方法一代码#includein原创 2017-10-18 22:40:16 · 2044 阅读 · 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 · 428 阅读 · 0 评论 -
猴子吃桃问题
题目: 猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个 第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下 的一半零一个。到第10天早上想再吃时,见只剩下一个桃子了。请输出这十天当天的桃子数。实现代码:#includeint main(){ int x=1,i; for(i=10;i>=1;i--){原创 2017-10-19 23:51:23 · 243 阅读 · 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 · 7740 阅读 · 0 评论 -
C++继承的使用
C++继承的使用用继承实现输出长方体面积和体积实现代码:#includeusing namespace std;class Rectangle1{ public: void getWidth(int w){ width=w; } void getLength(int l){ length=l; } void get原创 2017-10-29 23:29:08 · 294 阅读 · 0 评论 -
冒泡排序将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 · 1273 阅读 · 0 评论 -
有一个已经排好序的数组。现输入一个数,要求按原来的规律将它插入数组中。
题目:有一个已经排好序的数组。现输入一个数,要求按原来的规律将它插入数组中。实现代码:#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 · 11555 阅读 · 2 评论 -
C++ 中的运算符重载
C++ 中的运算符重载您可以重定义或重载大部分 C++ 内置的运算符。这样,您就能使用自定义类型的运算符。重载的运算符是带有特殊名称的函数,函数名是由关键字 operator 和其后要重载的运算符符号构成的。与其他函数一样,重载运算符有一个返回类型和一个参数列表。Box operator+(const Box&);声明加法运算符用于把两个 Box 对象相加,返回最终原创 2017-10-30 22:44:12 · 236 阅读 · 0 评论 -
输出100个100以内的随机数(C++)
C++使用随机数:案例:输出100个100以内的随机数(C++)实现代码:#include#include#includeusing namespace std; int main(){ int a[100],i; srand((unsigned)time(NULL));//设置种子 for(i=0;i<100;i++){ a[i]=rand()%100; c原创 2017-10-23 23:32:06 · 9477 阅读 · 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 · 6050 阅读 · 0 评论 -
C++ 二元运算符重载
C++ 二元运算符重载二元运算符需要两个参数,下面是二元运算符的实例。我们平常使用的加运算符( + )、减运算符( - )、乘运算符( * )和除运算符( / )都属于二元运算符。就像加(+)运算符。下面的实例演示了如何重载加运算符( + )。类似地,您也可以尝试重载减运算符( - )和除运算符( / )。代码示例;#include using namespa原创 2017-10-31 23:34:35 · 331 阅读 · 0 评论 -
C++ 命名空间
C++ 命名空间命名空间专门作为附加信息来区分不同库中相同名称的函数、类、变量等。使用了命名空间即定义了上下文。本质上,命名空间就是定义了一个范围。定义命名空间命名空间的定义使用关键字 namespace,后跟命名空间的名称,如下所示:namespacenamespace_name{// 代码声明}为了调用带有命名原创 2017-11-09 22:34:53 · 161 阅读 · 0 评论 -
C++ 模板
C++ 模板模板是泛型编程的基础,泛型编程即以一种独立于任何特定类型的方式编写代码。模板是创建泛型类或函数的蓝图或公式。库容器,比如迭代器和算法,都是泛型编程的例子,它们都使用了模板的概念。每个容器都有一个单一的定义,比如 向量,我们可以定义许多不同类型的向量,比如 vector 或 vector 。函数模板模板函数定义的一般形式如下所示:原创 2017-11-09 22:55:45 · 131 阅读 · 0 评论 -
C++ 预处理器
C++ 预处理器预处理器是一些指令,指示编译器在实际编译之前所需完成的预处理。所有的预处理器指令都是以井号(#)开头,只有空格字符可以出现在预处理指令之前。预处理指令不是 C++ 语句,所以它们不会以分号(;)结尾。我们已经看到,之前所有的实例中都有 #include 指令。这个宏用于把头文件包含到源文件中。C++ 还支持很多预处理指令,比如 #include、原创 2017-11-09 23:31:35 · 227 阅读 · 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 · 2240 阅读 · 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 · 998 阅读 · 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 · 376 阅读 · 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 · 6011 阅读 · 4 评论