问题:输出一个整数的每一位
对一个整数 ”%10“ 时,可得其最后一位的数字,即个位的数字;对一个整数 “/10” 时,若无强制数据转换,则会得到一个去掉个位数的整数,综上,重复使用 “%10” 和 “/10” ,可以得到一个整数的每一位的数字。
代码实现:
#define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #include <stdlib.h>
int main(){ int number; int i, j; int count = 0; printf("请输入一个整数:\n"); scanf("%d",&number); printf("这个数的各个位上的数字是:\n"); while (number > 0){ j = number % 10; printf("%2d",j); number = number / 10; } printf("\n"); system("pause"); return 0; }
注释:
数据类型强制转换(显示转换):
使用 “(类型符)” 于表达式之前,即可将表达式的值转换为所希望的类型。例:“1/2” 的运算结果为0,如果想要得到0.5,则需要进行强制转换 “(double)1/2”,将1强制转换为1.0.