C 数对调
来源:学生作业帮助网 编辑:作业帮 时间:2024/07/18 17:40:58
programxzpx;constn=7;vara:array[1..n]ofinteger;i,j,k,t:integer;beginwrite('Enterdate:');fori:=1tondo
把12的两个数字对调,得到21.一个两位数,十位数字是a,个位数字是b,则这个两位数为(10a+b).把两个数字对调后所得新两位数为(10b+a).原两位数与新两位数得差为(9a)-(9b),化简得(
参考:http://hi.baidu.com/%D7%F6%B6%F8%C2%DB%B5%C0/blog/item/5522a1674310773caa184c64.html
vara:array[1..1000]ofinteger;n,i,j,k:integer;beginreadln(n);j:=1;fori:=1tondobeginread(a[i]);ifa[i]
eginreadln(n);fori:=1tondoread(a[i]);k:=1;fori:=1ton-1doifa[k]再问:说明部分也写一下再答:beginreadln(n);{读入一共多少个数
100a+10B+C100C+10B+a
x=n/100;y=n%100/10;z=n%10;printf("%d",z*100+10*y+x);
intmain(intargc,char*argv[]){intn,x,y,z;printf("input99
#includeinti,maxn,minn,n,a[1000];voidswapvar(ints,intt)//交换的过程函数{inttemp;temp=a[s];a[s]=a[t];a[t]=te
vara,b,x,y,f:longint;beginwhilenot(eof)dobeginreadln(a);f:=0;b:=adiv10+(amod10)*10;forx:=10to99dobeg
j=i;k=i;i=a[j];a[j]=a[k];a[k]=i;
设这个两位数的个位十位分别为X、Y所以,原两位数为:10Y+X数字对调后:10X+Y所以,两数字的差为:(10Y+X)-(10X+Y)=9(Y-X)即差能被9整除
设个位数为a,十位数则为11-a,所以原数为10(11-a)+a,变化后的数为10a+11-a,所以有:10a+11-a=10(11-a)+a+63,解得a=9,所以原数为29,变化后的数为92再问:
programj;vara,b,c,m,n:integer;beginreadln(m);a:=mdiv100;b:=(mdiv10)mod10;c:=mmod10;n:=c*100+b*10+a;w
(10a+b)-(a+10b)=10a+b-a-10b=9a-9b∵(9a-9b)/9=a-b∴此差能被9整除.
假设个位数为a,十位数为b,则这个两位数为10b+a.新的两位数为10a+b(10b+a)-(10a+b)=9b-9a=9(b-a)所以,总能被9整除.
原数为100a+10b+c,对调后为100C+10B+A,则两个数字的差为99C-99A=99(C-A)有次可得所得数一定是9的倍数所以可以被9整除~再答:能采纳么谢谢了再问:能再问:再答:谢谢了~~
a*10+b+a+b*10=(a+b)*10+(a+b)=(a+b)*11C
#include<stdio.h>void main(){ int i,n,t,min,max,m,a[10]; int mini,max
{\x09intm=0,n=1;//m记录最小数的下标,n记录次小数的下标\x09if(a[m]>a[n])\x09{\x09\x09m=1;\x09\x09n=0;\x09}\x09for(i=2;