数据结构 枚举学习笔记

5 5 5 5 5 = 5 填上  加减乘除

#include<stdio.h>
int main()
{
	int j,i[5];
	int sign;
	int result;
	int count;
	int num[6];
	float left ,right;
	char oper[5]={‘ ‘,‘+‘,‘-‘,‘*‘,‘/‘};
	printf("请输入5个数:");
	for(j=1;j<=5;j++)
		scanf("%d",&num[j]);
	printf("请输入结果:");
	scanf("%d",&result);
	for(i[1]=1;i[1]<=4;i[1]++)
	{
		if((i[1]<4)||(num[2]!=0) )
		{
			for(i[2]=1;i[2]<=4;i[2]++)
			{
				if((i[2]<4)||(num[3]!=0))
				{
					for(i[3]=1;i[3]<=4;i[3]++)
					{
						if((i[3]<4)||num[4]!=0)
						{
							for(i[4]=1;i[4]<=4;i[4]++)
							{
								if((i[4]<4)||(num[5]!=0))
								{
									left = 0;
									right = num[1];
									sign =1;
									for(j=1;j<=4;j++)
									{
										switch(oper[i[j]])
										{
											case ‘+‘:
												left =left + sign*right;
												sign = 1;
												right = num [j+1];
												break;
											case ‘-‘:
												left = left + sign*right;
												sign = -1;
												right = num[j+1];
												break;
											case ‘*‘:
												right = right*num[j+1];
												break;
											case ‘/‘:
												right = right/num[j+1];
												break;
										}
									}
									if(left+sign*right == result)
									{
										count++;
										printf("%3d:  ",count);
										for(j=1;j<=4;j++)
											printf("%d%c",num[j],oper[i[j]]);
										printf("%d=%d\n",num[5],result);
									}
								}
							}
						}
					}
				}
			}
		}
	}
	if(count == 0)
		printf("没有符合要求的方法!\n");
	getch() ;
	return 0;
}
时间: 2024-11-02 11:58:46

数据结构 枚举学习笔记的相关文章

《大话数据结构》学习笔记 排序

排序的严格定义:  假设含有n个记录的序列为{r1,r2,......,rn},对应的关键字分别为{k1,k2......,kn},需确定1,2,......,n的一种排列p1,p2,......,pn,使其相应的关键字 满足Kp1<=Kp2<=......Kpn关系,即使得序列成为一个按关键字有序的序列(rpq,rp2,......rpn),此操作称为排序.  排序的稳定性:内排序与外排序(根据记录是否全部放置在内存中). 根据排序中的主要操作,可以分为插入排序类(直接插入排序->希尔

数据结构栈 学习笔记

栈是先进后出的数据结构. 下面直接上代码了.下面使用数据模仿栈式结构. // // main.cpp // StudyC++ // // Created by 杜甲 on 14-9-12. // Copyright (c) 2014年 杜甲. All rights reserved. // #include <iostream> //std::cout #include <stdio.h> using namespace std; #define MaxSize 10 int st

数据结构 链表学习笔记

#include<stdio.h> #include<stdlib.h> #include<string.h> struct stu_node{ char num[15]; int score; struct stu_node *next; }; struct stu_node *stu_create() { struct stu_node *head, *newN, *tail; char num[15]; int score; printf("请输入学生的

数据结构 栈 学习笔记1

//SeqStack.h typedef struct stack { DATA data[SIZE+1];  //数据元素  int top;  //栈顶  }SeqStack; SeqStack *SeqStackInit() { SeqStack *p; if(p=(SeqStack *)(malloc)(sizeof(SeqStack)))  //申请栈内存  { p->top = 0; //设置栈顶为零  return p; //返回指向栈的指针  } return NULL; } i

数据结构入门学习笔记-1

一.用计算机解决问题的步骤: 1.抽象出合适的数学模型 2.设计解决模型算法 3.编程,测试. 二.数值问题(可用数学方程解决)和非数值问题 数值问题比如:求解梁的受力:人口预测等: 非数值问题:图书馆书目的查找(线性结构):棋盘的博弈(树结构):路口交通灯设计(图结构)

数据结构 递归 学习笔记

求阶乘 #include<stdio.h> int fact(int n); int main() { int i; printf("请输入要求阶乘的一个整数:"); scanf("%d",&i); printf("%d的阶乘结果为:  %d\n",i,fact(i)); getch(); return 0; } int fact(int n) { if(n<=1) return 1; else  return n*fa

数据结构 递归 学习笔记2

进制转换  例如十进制转换其他进制 #include<stdio.h> #include<string.h> void convto (char *s , int n , int b) { char bit[]={"0123456789ABCDEF"}; int len; if(n==0) { strcpy(s,""); return; } convto(s,n/b,b); len = strlen(s); s[len] = bit[n%b]

Redis学习笔记~目录

redis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(链表).set(集合).zset(sorted set --有序集合)和hashs(哈希类型).这些数据类型都 支持push/pop.add/remove及取交集并集和差集及更丰富的操作,而且这些操作都是原子性的.在此基础上,redis支持各种不同方式的排 序.与memcached一样,为了保证效率,数据都是缓存在内存中.区别的是redis会周期性的把更

iOS学习笔记---c语言学习第七天

结构体 结构体是一种自定义的数据类型 struct 结构体名 { 类型说明符  成员名: … 类型说明符  成员名: }: #import <Foundation/Foundation.h> int main(int argc, const char * argv[]) { struct teacher{ char name[30]; char sex; int age; char course[30]; }; typedef struct teacher Teacher; Teacher c