#include<cstdio>
int main(){
int x,y,z,jk,j,g,e;
int array[21];
x = 3465;
y=264;
jk=20;
for(j=1; j<=20; j++){
array[j]=0;
}
while(y != 0){
z = y%10;
y /= 10;
while(z != 0){
g = x;
for(e=jk; e>=1; e--){
g += array[e];
array[e] = g%10;g /= 10;
}
z--;
}
jk--;
}
j=1;
while(array[j]==0) j++;
for(jk=j; jk<=20; jk++){
printf("%d ",array[jk]);
}
return 0;
}
请列表写过程并解答,谢谢
# include <stdio.h>
//#include <cstdio>
int main(){
int x,y,z,jk,j,g,e; // 初始化变量
int array[21]; // 定义长度为21的数组
x = 3465; // 变量赋值
y=264;
jk=20;
for(j=1; j<=20; j++){
array[j]=0; // 将数组array的元素都初始化为0,即使j只是1到20但是array默认初始化元素为0
}
while(y != 0){
z = y%10; // z为y数值的分离数,4,6,2三次循环
y /= 10; // 三次循环y分别为26,2,0
while(z != 0){
g = x; // 12次循环,z都为3465
for(e=jk; e>=1; e--){
g += array[e]; //230次循环第一次为3465,第二次·为346第三次为34第三次为3,
// 第21次为3470第22次为353第23次为39第24次为6.。。。可以printf("g:%d\n", g)打印出来看
array[e] = g%10; // 将array的第e个元素赋值为g%10
g /= 10;
}
z--;
}
jk--;
}
j=1;
while(array[j]==0) j++;
for(jk=j; jk<=20; jk++){
printf("%d ",array[jk]);
}
return 0;
}
您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!