我正在编写一个代码来显示C语言中任何正整数的数字.例如,整数345将显示为三个四五.
我编写的代码适用于所有数字大于0的整数.但是某些整数(如10,304,0等)无法正确显示.为了挑战,不允许使用递归和数组.只允许循环和if构造.有什么建议?
#include<stdio.h>
int main(void)
{
int num, num_copy, accum = 1;
printf("Enter an integer ");
scanf("%i",&num);
num_copy = num;
while (num > 0){
while (num > 9){
num = num / 10;
accum *= 10;
}
switch (num){
case (1):
printf("one ");
break;
case (2):
printf("two ");
break;
case (3):
printf("three ");
break;
case (4):
printf("four ");
break;
case (5):
printf("five ");
break;
case (6):
printf("six ");
break;
case (7):
printf("seven ");
break;
case (8):
printf("eight ");
break;
case …Run Code Online (Sandbox Code Playgroud) 我写了这个简单的代码来生成高达1005的所有正整数的4次幂.它只能在整数215之间正常工作.之后它会给出错误的读数.为什么这样?
# include<stdio.h>
int main(void)
{
int i;
unsigned long long int j;
for (i = 1; i <= 1005; i++){
j = i*i*i*i;
printf("%i.........%llu\n",i,j);
}
return 0;
}
Run Code Online (Sandbox Code Playgroud)