●难道我国就没有会这道题的吗 呵呵

来源:百度知道 编辑:UC知道 时间:2024/05/31 08:24:17
在C语言中,有一正整数20081201,下列代码()可以反向输出该正整数得到
10218002。(选择一项)
a) int r_digit;
int value=20081201;
do{
r_digit=value/10;
printf(“%d”,r_digit);
value=value%10;
}while(value>0);

b) int r_digit;
int value=20081201;
do{
r_digit=value%10;
printf(“%d”,r_digit);
value=value/10;
}while(value>0);

c) int r_digit;
int value=20081201;
do{
r_digit=value%10;
printf(“%d”,r_digit);
value=value/10;
}while(value>=0);
d) int r_digit;
int value=20081201;
do{
r_digit=value/10;
printf(“%d”,r_digit);
value=value%10;
}while(value>=0);
====================================
为什么正确答案b)中还要**** value=value/10;
这样一来,不是成了1021800 了吗??!!
有会做的吗,告诉我吧,谢谢~~
不知(回答者:zsm_ss - 助理 二级 )所云。。。。。。。。。。。。。。。。

第一次
r_digit=1
value=2008120;
第2次
r_digit=0
value=200812;
第3次
r_digit=2
value=20081;

...
应该不难看吧。

int r_digit;
int value=20081201;
do{
r_digit=value%10; /*模10,也就是取最后一位*/
printf(“%d”,r_digit); /*把最后一位打印出来*/
value=value/10; /*除以10,也就是把最后一位扔掉*/
}while(value>0);

是LZ你自己不懂而已 C简单到家了你该学下基础

同意楼上的说法,
不知者不怪,不学者怪,不思者怪

不能很难吧