c语言程序求改错 【问题描述】 输入三位数字N,求两位数AB(其中个位数字为B,十位数字为A,且有0 < A < B

作者&投稿:倚爬 (若有异议请与网页底部的电邮联系)
输入三位数字N,求两位数AB(其中个位数字为B,十位数字为A,且有0 < A < B ≤9)~

#includeint main(void){int i,j,k,N;printf(" 请输入一个三位正整数:");while(scanf("%d",&N) == 1){if(N999){printf(" 输入错误!请重新输入:");continue;}k=0;for(i=1;i<9;i++)for(j=i+1;j<10;j++)if((i*10+j)*(j*10+i) == N){printf(" A = %d B = %d
",i,j);k++;}if(!(k))printf(" No Answer
",i,j);printf("
请输入一个三位正整数:");}return 0;}

b=a%10;
c=a/10;
d=b*10+c;
for(a=11;a<=99;a++)
{
if((d*a)==m)
{
printf("%d%d
",c,b);
}
}

改为
for(a=11;a<=99;a++)
{
b=a%10;
c=a/10;
d=b*10+c;
if((d*a)==m)
printf("%d%d
",c,b);
else
printf("No");
}

要求出所有的这样的数,那就要循环了
for(a=11;a<=99;a++)
{
b=a%10;
c=a/10;
d=b*10+c;
if((d*a)>=100&&d*a<=999)
printf("%dX%d=%d
",a,d,a*d);
}

这个程序a无法循环到2以上,只能是1
---------------------------
你的大括号乱用,for (a=1...)的循环体内有句 return 0; 怎么可能到达a==2嘛!

且怎样加入条件a!=b,我尝试加在b<=9的后面
----------------------------
因为条件有a<b,所以,这句for(b=1;b<=9;b++) 直接改成 for(b=a+1;b<=9;b++)不就是了,
同时for(a=1;a<=9;a++)改成for(a=1;a<=8;a++)

#include<stdio.h>
#include<math.h>
int main()
{
int n,a,b,t,m,find=1;
scanf("%d",&n);
for(a=1;a<=9;a++)
{
for(b=a+1;b<=9;b++)
{
m=(a*10+b)*(b*10+a);
if(m==n)
{
find=0;
goto Result;
}
else
continue;
}

}
Result:
if(find!=0) printf("No answer");
else
printf("%d%d",a,b);
return 0;
}

外层循环的大括号没扩对
把格式对齐了 再看
find 必须先赋值 在进行比较

外层循环的大括号没扩对
把格式对齐了 再看
find 必须先赋值 在进行比较


塔什库尔干塔吉克自治县13341564118: c语言程序求改错 【问题描述】 输入三位数字N,求两位数AB(其中个位数字为B,十位数字为A,且有0 < A < B -
习版沙棘: 外层循环的大括号没扩对 把格式对齐了 再看 find 必须先赋值 在进行比较

塔什库尔干塔吉克自治县13341564118: 【c语言求改错】编制程序用递归法将一个整数n转换成字符串.例如,输入483,应输出字符串“483” -
习版沙棘: void f(x) {if(x!=0)f(x/10)elsereturnchar c = x%10 + 48 printf("%c", c)}

塔什库尔干塔吉克自治县13341564118: C语言问题,求改错 -
习版沙棘: 修改如下:#include void swap(int *x, int *y); int main(void) { int a = 3, b = 4; /*********Found************/ swap(&a, &b);//swap函数的参数是两个指针变量,所以应该传入a,b的地址 /*********Found************/ printf("a=%d b=%d\n", a, b);//输出应该...

塔什库尔干塔吉克自治县13341564118: C语言求改错 -
习版沙棘: #include #define Pi 3.1415926536 int main() { double A,B,C; scanf("%lf",&r); A=Pi*r*r; B=4*Pi*r*r; C=4.0/3*Pi*r*r*r; printf("A is %10lf\n",A); printf("B is %10lf\n",B); printf("C is %10lf\n",C); return 0; }

塔什库尔干塔吉克自治县13341564118: c语言 改错,求解释,有采纳 -
习版沙棘: 1 第一出错误因为数组的格式必须是 type name[]; 缺少了【】所以第一个错了 第二处,因为你要定义的数组元素有小数,所以不能用int 整数格式 要用浮点型 float 或double2 第一...

塔什库尔干塔吉克自治县13341564118: C语言程序改错求解... -
习版沙棘: #include {stdio.h} include int i,j,a[N,N];int i,j,a[N][N]; for(i=1,i<N;i++)printf("%6f",a[i][j]);printf("%6d",a[i][j]);...

塔什库尔干塔吉克自治县13341564118: 急求c语言改错!输入一个数字,若存在该数字并位置正确就是1M,数字存在但位置不对应则是1N. -
习版沙棘: 1. M N必须初始化为0.2. if(a==e) M++;if((a==f)||(a==g)||(a==h)){ if(a!=e)//这种情况必须判断a是否等于e...

塔什库尔干塔吉克自治县13341564118: 求C语言改错题 -
习版沙棘: #include<iostream> using namespace std; void swap(int *a,int *b) { int temp; temp=a; a=b; b=temp; } int main() {int x,y; cout<<"输入二个数"; cin>>x>>y; swap(x,y); cout<<"交换输出是:"; cout<<x<<" " <<y<<endl; }2.#include <iostream> ...

塔什库尔干塔吉克自治县13341564118: C语言问题.求改错,不是要da'an -
习版沙棘: 自己看注释吧.你那个函数实在应该改进,但你不让,只让改错…… int main(void){ char str[MAXS], ch_start, ch_end, *p; //scanf("%s\n", str); scanf("%s", str);//删除\n //scanf("%c %c", &ch_start, &ch_end); scanf(" %c %c", &ch_start, &...

塔什库尔干塔吉克自治县13341564118: C语言程序求纠错~~!! -
习版沙棘: 只有子函数有问题,帮你修改好了,供参考 int fun(int a[]) { int i,n=15; for(i=1;iif(a[i-1]==a[i]) //后一个与前一个比较 { int j; for ( j=i;ja[j]=a[j+1]; n--; i--; } return(n); }

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网