改错~~ 10

/*1.给定等式ABCDE其中每个字母代表一个数字,且不同数字对应不DFG同字母。编程求出这些数字并且打出这个数字的+DFG算术计算竖式。———————XYZDE*/#i... /*1. 给定等式 A B C D E 其中每个字母代表一个数字,且不同数字对应不
D F G 同字母。编程求出这些数字并且打出这个数字的
+ D F G 算术计算竖式。

———————

X Y Z D E*/
#include<stdio.h>
#include<stdlib.h>
#include<string.h>

int Is_different(int a[]);

int main(void)
{
int a,b,c,d,e,f,g,x,y,z;
int temp[10];
a=b=c=d=e=f=g=x=y=z=0;
while(++a<=9)
while(++b<=9)
while(++c<=9)
while(++d<=9)
while(++e<=9)
while(++f<=9)
while(++g<=9)
while(++x<=9)
while(++y<=9)
while(++z<=9){
temp[10]={a,b,c,d,e,f,g,x,y,z};
if(Is_different(temp) && a!=0 && x!=0)
if((a*10000+b*1000+c*100+d*10+e)+2*
(d*100+f*10+g)==(x*10000+y*1000+z*100+d*10+e))
printf("此式子为:\n");
printf(" %d %d %d %d %d\n",a,b,c,d,e);
printf(" %d %d %d\n",d,f,g);
printf(" + %d %d %d\n",d,f,g);
printf("-----------------------\n");
printf(" %d %d %d %d %d\n",x,y,z,d,e);
}
system("pause");
return 0;
}

int Is_different(int a[])
{
int i,j,yes=1,no=0;
for(i=0;i<=strlen(a)-1;++i)
for(j=strlen(a);j>i;--j)
if(a[i]==a[j])return yes;
return no;
}
数组问题改了还是有问题的。

玉铉 你也太猛了,有个明显的问题,我改了。你竟然说没问题。strlen(a)是不对的。

俺的乖乖~你理解错了~
展开
 我来答
yinhudongtian
2007-11-22 · TA获得超过585个赞
知道小有建树答主
回答量:328
采纳率:100%
帮助的人:0
展开全部
#include<stdio.h>
#include<stdlib.h>
#include<string.h>

int Is_different(int a[]);

int main(void)
{

int a,b,c,d,e,f,g,x,y,z;
int temp[10];
a=b=c=d=e=f=g=x=y=z=0;
while(++a<=9)
while(++b<=9)
while(++c<=9)
while(++d<=9)
while(++e<=9)
while(++f<=9)
while(++g<=9)
while(++x<=9)
while(++y<=9)
while(++z<=9){
temp[0]=a;temp[1]=b;temp[2]=c;temp[3]=d;temp[4]=e;temp[5]=f;temp[6]=g;temp[7]=x;temp[8]=y;temp[9]=z;
if(Is_different(temp) && a!=0 && x!=0)
if((a*10000+b*1000+c*100+d*10+e)+2*
(d*100+f*10+g)==(x*10000+y*1000+z*100+d*10+e))
printf("此式子为:\n");
printf(" %d %d %d %d %d\n",a,b,c,d,e);
printf(" %d %d %d\n",d,f,g);
printf(" + %d %d %d\n",d,f,g);
printf("-----------------------\n");
printf(" %d %d %d %d %d\n",x,y,z,d,e);
}
system("pause");
return 0;
}

int Is_different(int a[])
{
int i,j,yes=1,no=0;
for(i=0;i<=sizeof(a)/sizeof(int)-1;++i)
for(j=sizeof(a)/sizeof(int)-1;j>i;--j)
if(a[i]==a[j])return yes;
return no;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zhchgii
2007-11-22 · 贡献了超过137个回答
知道答主
回答量:137
采纳率:0%
帮助的人:28.1万
展开全部
Alt+Enter键就可以退出全屏运行模式.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
危献e3
2007-11-22 · TA获得超过2053个赞
知道大有可为答主
回答量:2738
采纳率:0%
帮助的人:1961万
展开全部
=========================================
问题出在您没有搞清楚 数组初始化 和数组的赋值是完全不同的概念
不明白你什么意思 纠错这种问题 不好摆到这里问吧 我的程序不能运行么?
我Win2K+TC2.0 无问题。
不好意思 我不猛 我只是回答个问题 注意 是您请求我在回答您的问题 我没有义务为我的答案正确性负责 您更没有权利评价我什么 我说了 我的程序运行没有任何问题 麻烦您看清楚 ok?
别以为您分多 这里人没有一个为了分来的
最起码 您放尊重 谢谢 。。
========================================
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
int temp[10];

int Is_different(int a[]);
void init(int a,int b,int c,int d,int e,int f,int g,int x,int y,int z,int array[]);

int main(void)
{
int a,b,c,d,e,f,g,x,y,z;
a=b=c=d=e=f=g=x=y=z=0;
while(++a<=9)
while(++b<=9)
while(++c<=9)
while(++d<=9)
while(++e<=9)
while(++f<=9)
while(++g<=9)
while(++x<=9)
while(++y<=9)
while(++z<=9){
init(a,b,c,d,e,f,g,x,y,z,temp);
if(Is_different(temp) && a!=0 && x!=0)
if((a*10000+b*1000+c*100+d*10+e)+2*
(d*100+f*10+g)==(x*10000+y*1000+z*100+d*10+e))
printf("此式子为:\n");
printf(" %d %d %d %d %d\n",a,b,c,d,e);
printf(" %d %d %d\n",d,f,g);
printf(" + %d %d %d\n",d,f,g);
printf("-----------------------\n");
printf(" %d %d %d %d %d\n",x,y,z,d,e);
}
system("pause");
return 0;
}

void init(int a,int b,int c,int d,int e,int f,int g,int x,int y,int z,int array[])
{
array[0]=a;array[1]=b;array[2]=c;array[3]=d;array[4]=e;array[5]=f;array[6]=g;
array[7]=x;array[8]=y;array[9]=z;
}

int Is_different(int a[])
{
int i,j,yes=1,no=0;
for(i=0;i<=sizeof(a)/sizeof(int)-1;++i)
for(j=sizeof(a)/sizeof(int)-1;j>i;--j)
if(a[i]==a[j])return yes;
return no;
}
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式