求助啊 C语言。1.键盘输入三个数,要求正确分离出它的个位、十位、个位。并打印到屏幕上面。j结果不对啊!

[复制链接]
查看11 | 回复4 | 2012-11-21 10:30:52 | 显示全部楼层 |阅读模式
#include main(){int a1,a2,a3,x;printf("Please enter data X:");scanf(" %d",&x);a1=x/100;a2=(x-a1*100)/10;a3=x%10;printf("bit0=%d,bit1=%d,bit2=%d",a1,a2,a3);
/*输出的格式不要地址符号*/getch();}错误原因:输出的格式不对,a1,a2,a3前不要地址符号
不然输出的是他们的地址。...
回复

使用道具 举报

千问 | 2012-11-21 10:30:52 | 显示全部楼层
你这问题我以前也遇到过。 问题出在 printf() 函数中了, 该函数是输出变量的值, 我们把变量的值给他就行了, 没必要把变量的地址给他。 你应该分不清什么时候要给 变量 的地址吧。你看哪个函数要修改 变量的值, 应该就需要输入该变量的地址了, 譬如 scanf() 该函数就是要修改你的变量的值得, 所以我们在使用的时候 , 就需要把...
回复

使用道具 举报

千问 | 2012-11-21 10:30:52 | 显示全部楼层
签到
给printf传参时不用加取址符
象你那样加了取址的话输出的是变量的地址而不是它的值...
回复

使用道具 举报

千问 | 2012-11-21 10:30:52 | 显示全部楼层
#include main(){int a1,a2,a3,x;printf("Please enter data X:");scanf(" %d",&x);a1=x/100; x=x%100;a2=x/10; x=x%10;a3=x;printf("bit0=%d,bit1=%d,bit2=%d",a1,a2...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行