写了段C代码,大概功能是:

[复制链接]
查看11 | 回复2 | 2011-3-26 20:29:58 | 显示全部楼层 |阅读模式
请输入要数字的个数: 10
请输入数字:0 1 2 3 4 5 6 7 8 9
请输入要参加组合数字的个数:6
请输入和等于:12
然后会把结果输出到文本:例如:112233
我要修改一下,就是输出的组合里,不能有重复数字,像112233这样的不要,必须是123456 这样的,或者是:11 12 13 14 15 16
请问我要修改哪里?
以下是我写的:
#include
main()
{
int n, a[100];
int i, j, k;
int m;
int sum, s;
int *pi[100];
printf("输入数字的个数(小于100):");
scanf("%d", &n);
printf("输入%d个数字:\n",n);
for (i = 0; i = 1; j-- )

{


if ((pi[j] == pi[j-1]) && (pi[j] == a+n-1))

{

if (k > j)

{

k = j;

}

}

}



pi[k-1]++;

if (pi[0] >= a+n)

{

return;

}

if (pi[k-1] >= a+n)

{

pi[k-2]++;

for (j = m-1; j > k-2 ; j--)

{

pi[j] = pi[k-2];

}

}


}
getch();
}

回复

使用道具 举报

千问 | 2011-3-26 20:29:58 | 显示全部楼层
增加判断相等语句#include void main(){ int n, a[100]; int i, j, k; int m; int sum, s; int *pi[100]; int t,flag=0;//增加2个变量 printf("输入数字的个数(小于100):"); scanf("%d", &n); printf("输入%d个数字:\n",n); for (i = 0; i < n ; i++) {
scanf("%d", &a); } printf("输入参与组合的数字个数(小
回复

使用道具 举报

千问 | 2011-3-26 20:29:58 | 显示全部楼层
#i nclude #i nclude #i nclude #i nclude #i nclude #i nclude #i nclude #i nclude #i nclude unsigned char bindstr[]={ 0x05,0x00,0x0B,0x03,0x10
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行