程序填空,不要改变与输入输出有关的语句。
输入一个正整数repeat (0<repeat<10),做repeat次下列运算:
输入一个整数 in,从高位开始逐位分割并输出它的各位数字。
输出使用语句:printf("%-2d", digit);
输入输出示例:括号内为说明
输入
3 (repeat=3)
23456 (in=23456)
-600 (in=-600)
8 (in=8)
输出
2 3 4 5 6
6 0 0
8
#include <stdio.h>
int main(void)
{
int digit, in, power, temp;
int repeat, ri;
scanf("%d", &repeat);
for(ri = 1; ri <= repeat; ri++){
scanf("%d", &in);
printf("\n");
}
}
编程题一个,请高手解答一下。
答案:3 悬赏:50 手机版
解决时间 2021-05-13 17:04
- 提问者网友:佞臣
- 2021-05-13 01:58
最佳答案
- 五星知识达人网友:慢性怪人
- 2021-05-13 03:01
#include<stdio.h>
#include<stdlib.h>
int main()
{
int digit,in,power,temp;
int repeat,ri;
scanf("%d",&repeat);
for(ri=1;ri<=repeat;ri++)
{
scanf("%d",&in);
if (in<0) in*=-1;
temp=in;
power=0;digit=1;
while (temp>0) temp/=10,power++;
temp=1;
while (power>0) temp*=10,power--;
temp/=10;
while (temp>0) digit=in/temp,in%=temp,temp/=10,printf("%-2d",digit);
printf("\n");
}
system("pause");
return(0);
}
#include<stdlib.h>
int main()
{
int digit,in,power,temp;
int repeat,ri;
scanf("%d",&repeat);
for(ri=1;ri<=repeat;ri++)
{
scanf("%d",&in);
if (in<0) in*=-1;
temp=in;
power=0;digit=1;
while (temp>0) temp/=10,power++;
temp=1;
while (power>0) temp*=10,power--;
temp/=10;
while (temp>0) digit=in/temp,in%=temp,temp/=10,printf("%-2d",digit);
printf("\n");
}
system("pause");
return(0);
}
全部回答
- 1楼网友:人间朝暮
- 2021-05-13 05:06
#include <stdio.h>
int main(void)
{
int digit, in, power, temp;
int repeat, ri;
scanf("%d", &repeat);
for(ri = 1; ri <= repeat; ri++){
scanf("%d", &in);
temp =in;
power=1;
while(temp)
{
power*=10;
temp/=10;
}
while(in)
{
power/=10;
digit=in/power;
in=in%power;
printf("%-2d", digit);
}
printf("\n");
}
}
- 2楼网友:动情书生
- 2021-05-13 04:34
while(temp)
{
if(temp>=10)
{
digit=in/10;
temp=in%10;
printf("%-2d", digit);
}
else
{
digit=temp;
printf("%-2d", digit);
temp=0;
}
}
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯