c语言 算法求助

ppcc8786 2012-06-29 02:19:35
数组{1,2,3},怎么实现打印它的所有子集{1}、{2}、{3}、{1,2}、{2,3}、{1,2,3}
...全文
81 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
nice_cxf 2012-06-29
  • 打赏
  • 举报
回复
实际就是把(3,1),c(3,2),c(3,3)全写出来,虽然不是太复杂,但也还有点麻烦
ppcc8786 2012-06-29
  • 打赏
  • 举报
回复
这个写漏了 加上这个3楼的写法就不行了。
[Quote=引用 1 楼 的回复:]
为啥{1,3}不算?
[/Quote]
mc913 2012-06-29
  • 打赏
  • 举报
回复
递归,循环都可以了。
不用什么高深的算法
酱油党 2012-06-29
  • 打赏
  • 举报
回复
这个是个伪算法题!~实际写出来的都木啥思想
赵4老师 2012-06-29
  • 打赏
  • 举报
回复
仅供参考
#include <stdio.h>
#include <string.h>
char *a="abcde";
int L,i,j,k;
void main() {
L=strlen(a);
for (i=1;i<=L;i++) {
for (j=0;j<=L-i;j++) {
for (k=j;k<j+i;k++) {
printf("%c",a[k]);
}
printf("\n");
}
}
}
qixing1115 2012-06-29
  • 打赏
  • 举报
回复
这种问题百度吧
nice_cxf 2012-06-29
  • 打赏
  • 举报
回复
为啥{1,3}不算?
一.C语言基础 1.C语言特点(识记); 2.C语言程序基本组成(识记): 3.基本数据类型: 3.1 标识符与基本数据类型(识记), 3.2 常量与变量(领会) 3.3 内存的概念(识记) 4.基本输入、输出函数(领会): 5.运算符与表达式(简单应用): 5.1 运算符的优先级与结合性 二.程序控制结构 1.C语言的语句(识记): 2.顺序结构(领会): 3.分支结构(简单应用): 4.循环结构(综合应用): 5 算法特点 6 流程图 三.构造型数据 1.数组(综合应用): 1.1 定义和引用 1.2 字符数组 1.3 指针和数组 2.结构类型: 2.1 结构类型的概念 2.2 结构类型定义及结构变量说明 2.3 结构变量的初始化 2.4 结构数组的初始化 3.联合类型(识记): 3.1 联合类型的概念 3.2 联合类型定义和联合变量说明 3.3 联合类型的使用 3.4 Struct 和 Union区别 4.枚举型(识记): 4.1 枚举型的定义 4.2 使用枚举型变量 5.typedef的用途(识记): 四.指针 1.指针与指针变量(识记): 2.指针运算符(领会): 3. 指针与函数 4.指针数组与指向指针的指针(识记): 5.指针与结构(领会): 6. 难点和易混淆 五.函数 1.常见的系统库函数(识记): 2.用户自定义函数(简单应用): 2.1函数定义 2.2 函数调用 2.3 函数声明 2.4 函数返回值 2.5 函数参数 3.函数之间的数据传递(领会): 4.函数的嵌套调用及递归调用(领会): 5.局部变量与全局变量(识记): 6.变量的存储类型与变量的初始化(领会): 7.编译预处理(领会): 六.文件 1.文件的基本概念,C语言中的两种文件(识记) 2.文件的打开、关闭和文件结束测试,文件的读写,文件的定位(识记) 2.1文件操作函数 2.2 文件权限 七.算法与编程(综合应用) 1 使用Turbo C集成开发环境调试程序 1.1.源程序的编写、编辑与改错(领会); 1.2.集成环境下的求助Help(识记); 1.3.程序的编译与目标代码的生成(识记); 1.4.程序的调试(综合应用): 1.5.了解Turbo C程序的常见错误提示(识记)。 2 重点编程题 八 位运算 1. & 2. | 3. ^ 4. ~ 5. << 6. >> ———————————————— 版权声明:本文为CSDN博主「kaikai_sk」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。 原文链接:https://blog.csdn.net/kaikai_sk/article/details/106061539
#include "iostream.h" #include "string.h" #include "stdlib.h" int g; //g是接收功能选择的变量 // 加法函数 void out() { cout<<" 程序功能:可以完成任意大数的加法,减法和比较大小"<y?m=x:m=y; ma=m; i=x-1; j=y-1; for(;m>0;i--,j--,m--) { if(j=xx) s=int(a[i])-48+jin; //将字符转换成整型 else if(i=yy) s=int(b[j])-48+jin; else if(i>=xx && j>=yy) s=(int(a[i])-48+int(b[j])-48+jin); if(s>9) { jin=1; c[m]=char(s+38); } else { jin=0; c[m]=char(s+48); } } if(jin==1) c[0]='1'; else c[0]=' '; if(g==1) { cout<<"两数相加的结果为:"; if(f==0) for(i=0;i=0;i--,j--,m--) { if(j=xx) s=int(a[i])-48-jin; else if(i>=xx&&j>=yy) s=(int(a[i])-48)-(int(b[j])-48)-jin; if(s<0) { jin=1; c[m]=char(s+58); } else { jin=0; c[m]=char(s+48); } } if(g==1) { cout<<"两数相加的结果为:"; if(f==0) for(i=0;iy) { if(a[0]=='-') cout<<"数一小于数二"<b[i]) { cout<<"数一小于数二"<b[i]) { cout<<"数一大于数二"<>a; cout<<" 输入第二个大数:"; cin>>b; while(1) { cout<<"(1:加法 2:减法 3:比较 4:乘法 5:除法 6:求余)请选择:"; cin>>g; x=strlen(a); y=strlen(b); if(a[0]=='-' && b[0]=='-' && g==1) { f=1; d=3; add(a,b,x,y,f,d); } if(a[0]!='-' && b[0]!='-' && g==1) { f=0; d=0; add(a,b,x,y,f,d); } if(a[0]=='-' && b[0]!='-' && g==1) { if(x-1>y) { f=1; d=1; jian(a,b,x,y,f,d); } if(x-1==y) { for(int i=0;ib[i]) { f=1; d=1; jian(a,b,x,y,f,d); break; } if(a[i+1]y-1) { f=0; d=2; jian(a,b,x,y,f,d); } if(x==y-1) { for(int i=0;ib[i+1]) { f=0; d=2; jian(a,b,x,y,f,d); break; } if(a[i]y) { f=1; d=1; jian(a,b,x,y,f,d); } if(x==y) { for(int i=1;ib[i]) { f=1; d=1; jian(a,b,x,y,f,d); break; } if(a[i]y) { f=0; d=0; jian(a,b,x,y,f,d); } if(x==y) { for(int i=0;ib[i]) { f=0; d=0; jian(a,b,x,y,f,d); break; } if(a[i]算法?(Y/N)"; cin>>yn; if(yn!='Y' && yn!='y') break; } }赞同0| 评论 向TA求助 回答者: PFanAya | 四级采纳率:27% 擅长领域: C/C++ 参加的活动: 暂时没有参加的活动 提问者对回答的评价: 谢了 相关内容 2012-2-6 请设计一个有效的算法,可以进行两个n位大整数的乘法运算。 2011-5-31 c语言题目 1.编写两个函数,输入的整数按字符串形式逆序输出,要求... 2011-4-21 用c语言表达,输出 思路写两个例子,不要printf("\n").其次:需... 2 2011-4-3 请你设计个算法,在整数边长的直角三角形ABC的斜边c的长度确定的情... 2009-5-14 如何用栈设计个C语言计算器,高手请跟我说说算法,特别是那些括号... 7 更多相关问题>> 查看同主题问题: 整数 乘法 c++ 算法 长度 两个 其他回答 共2条 2010-10-4 09:56 alfredzzj | 三级 网上很多的呀,Google一下。 按照乘法的运算思想就可以,这是每次都将进位缓存起来。 赞同0| 评论 2010-10-5 13:44 陈学阳 | 十二级 感觉这个好~~你可以挨着比较两个字符,需要匹配的可以不去比较,或者是问号的就当成是相等的字符 bool Match(const char* pSrc,const char* pMatch) { while(*pSrc!=0) { if(*pMatch==0) return false; if(*pMatch != '?' && *pSrc != *pMatch) return false; pMatch++; pSrc++; } if(*pMatch!=0) return false; else return true; }

69,364

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧