首页 > 解决方案 > 变量更改后如何显示变量的原始值

问题描述

因此,在代码中更改原始变量值后,我在显示原始变量值时遇到了问题。

#include <stdio.h>

int main(){
    int n, count =0;
    printf("enter an integer = ");
    scanf("%d", &n);
    while (n!=0){
        n/=10;
        count++;
    }
    printf("your number %d has %d digits", n, count);
    return 0;
} 

示例输入:123
此代码的输出“您的号码 0 有 3 位数字”

我想知道如何能够将 printf 中的变量“n”引用到“123”的原始值,所以输出将是“你的 123 号有 3 位数字”

标签: c

解决方案


我建议您使用单独的变量来保存您的值或使用不同的变量进行计数。

这段代码看起来像这样:

 #include <stdio.h>
 int main()
 {
   int n, count =0;
   printf("enter an integer = ");
   scanf("%d", &n);
   int buffer = n
   while (buffer!=0)
   {
     buffer/=10;
     count++;
   }
   printf("your number %d has %d digits", n, count);
   return 0;
 } 

这样,您将变量保存在代码中,并且只使用了缓冲区而不是实际值 n。


推荐阅读