gpt4 book ai didi

无法打印 '1' ?

转载 作者:行者123 更新时间:2023-11-30 21:20:19 26 4
gpt4 key购买 nike

我是编程新手,我正在学校做练习。对于我陷入困境的以下程序:

#include <stdio.h>
#include <stdlib.h>
#include<math.h>
int main() {
int n;
printf("Input the integer number:");
scanf("%d",&n);
int usevar=n;
int count=0;
while(n>1)
{
n/=10;
count++;
}
int sum=0;
printf("Reverse:\n");
for(int i=1;i<=count;i++)
{
int a=pow(10,i);
int b=pow(10,i-1);
sum=(usevar%a-usevar%b)/b;
printf("i=%d\n",sum);
}
return 0;
}

当我插入一些整数,例如 12345输出应该是:

反向:

i=5

i=4

i=3

i=2

i=1

但是我的程序的输出是:

反向:

i=5

i=4

i=3

i=2

但是当我输入不带“1”的数字作为起始数字时,我的程序可以正常工作:

输入整数:23556

反向:

i=6

i=5

i=5

i=3

i=2

那么以“1”开头的数字有什么问题呢?有人可以给我建议吗?如果您能提供帮助,我很高兴。

最佳答案

这来自您的第一个循环。尝试:

while(n >= 1)
{
n/=10;
count++;
}

关于无法打印 '1' ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40107484/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com