c语言的问题 解释一下程序

来源:百度知道 编辑:UC知道 时间:2024/09/22 20:31:16
输入一个三位数比如123 输出的结果分别为:a=1,b=2,c=3 怎么写这样的程序
#include<stdio.h>
int main()
{
int n;
char s[10] = {'\0'};
scanf("%d",&n);
sprintf(s, "%d", n);
printf("a=%c b=%c c=%c\n", s[0], s[1], s[2]);
return 0;
}
是怎么实现无的一个过程 帮我解释一下 谢谢啊
#include<stdio.h>
main()
{
int a,b,c,n;
scanf("%d",&n);
a=n/100,n%=100;
b=n/10,n%=10;
c=n;
printf("a=%d b=%d c=%d",a,b,c);
}
还有这个

这个很好理解的

假如不让你用c语言写,你怎嚜去做

123

取百位 123/100 : 1 --->除以10 进入下一步
取十位 23/10 : 2 --->除以10 进入下一步
取各位 3%10 : 3

第一个,将你输入的“123”作为字符串读入,然后按顺序输入,就是1.2.3了
第2个。将你输入的“123”作为整数读入,然后除100取整得到1,再使用除100的余数除10取整得到2。依次类推。。。

第一个程序:
#include<stdio.h>
main()
{
int n,s[3],i;
scanf("%d",&n);
for(i=0;i<=2;i++)
{
s[i]=n%10;
n/=10;
}
printf("a=%d,b=%d,c=%d\n", s[2], s[1], s[0]);
}
第2 3个不用解释了吧

include<stdio.h>
main()
{int a,b,c,z;
printf("please input number:");
scanf("%d",&z);
a=z/100;
b=z%100/10;
c=z%100%10;
printf("z=%d",z);
}第一个是这样写的