C语言中对于for语句,变量赋初值问题探讨

原创 2017年04月30日 15:08:10

  在C语言编程中很多时候会用到for语句循环,这就需要对for循环里面所涉及的变量赋值,有时赋值赋不对则会造成结果的错误。

  下面就我在编程中所涉及的问题进行详解。

  例如:打印所有不超过256的,其平方具有对称性质的数即回文数。

程序如下:

#include <stdio.h>


int main()
{
    int a[5], n, i, c, j ;
    for ( i =1; i < 256; i++ )
    {
        long int y, k = 0;
        c = 1;
        j = 0;
        y = i * i;
        while ( y > 0 )
        {
            a[j] = y % 10;
            y /= 10;
            j++;


        }
        for (; j > 0; j--)
        {
           k += a[j-1] * c;
           c *= 10;
        }

        if ( i * i == k )
            printf("%d ", i);
    }
    printf("\n");


}

  程序很简单我之所以出现问题,是在第三个for循环中,对变量k、c的赋值出现了错误,原因在于之前将k、c的初值赋在了第一个for循环外即第一行的Int中,这就导致在每一次for循环中,k、c的值都没有回到初值,一直保留上一次循环中的值,从而导致结果出错。

  因此,对for语句中初值的设定,以及每一次循环后其值的变化,需要认真分析。


版权声明:本文为 tengteng 三十分用心 原创的文章, 非商用 自由转载-保持署名-注明出处,谢谢哈 ! *@ο@*

C语言中对于for语句,变量赋初值问题探讨

在C语言编程中很多时候会用到for语句循环,这就需要对for循环里面所涉及的变量赋值,有时赋值赋不对则会造成结果的错误。   下面就我在编程中所涉及的问题进行详解。   例如:打印所有不超过256...
  • Crazy_Tengt
  • Crazy_Tengt
  • 2017年04月30日 15:08
  • 502

vc中for循环中多变量初始化的坑

在vs2013的debug模式中,如果用这样来定义的话, int iSum = 0; for (int j=0,i = 0; j...
  • sspdfn
  • sspdfn
  • 2017年06月19日 16:08
  • 203

浅谈类C语言中的for语句的用法

首先,这里所提到的类C语言指的是如C、C++、C#和Java等语法和C语言一样或类似的程序设计语言。这些语言中,for语句的语法和执行流程都是一样的。本文将就这一语句的用法进行一个较为深入的讨论。  ...
  • myali88
  • myali88
  • 2004年11月09日 21:21
  • 2935

c语言中for循环的执行顺序

测试c语言中的for循环的执行顺序
  • caohu2010
  • caohu2010
  • 2016年12月23日 17:43
  • 1182

VC 中 for循环初始化变量

VC6.0 编写如下程序,但后缀名分别改为.c和.cpp: #include int main(void) { for(int i=0; i...
  • zhoucoolqi
  • zhoucoolqi
  • 2012年05月11日 21:15
  • 1032

C语言中对于for语句,变量赋初值问题探讨

在C语言编程中很多时候会用到for语句循环,这就需要对for循环里面所涉及的变量赋值,有时赋值赋不对则会造成结果的错误。   下面就我在编程中所涉及的问题进行详解。   例如:打印所有不超过256...
  • Crazy_Tengt
  • Crazy_Tengt
  • 2017年04月30日 15:08
  • 502

c语言的循环之for循环

D ennisRitchie 过世了,他发明的c语言,一个影响深远并彻底改变世界的计算机语言。C语言的诞生是偶然的,它仅仅只是UNIX系统的附加产物。但是也丝毫掩盖不了它王者的地位,看看2014年的语...
  • qq790368411
  • qq790368411
  • 2015年10月19日 22:55
  • 419

C语言中变量的存储类型与初始化

存储类型变量的存储类型决定变量何时创建,何时销毁,以及变量的值保持多久。有三个地方可以存储变量: 普通内存 运行时堆栈 硬件寄存器 变量的默认存储位置取决于它的声明位置。静态变量在代码块外声明的变量总...
  • wy_ei
  • wy_ei
  • 2015年03月08日 19:41
  • 850

c中for 循环里可以初始化变量吗

经常 写成 for(int i = 0; i 在虚拟机下的linux平台下运行不能通过, 改成 int i ; for(i = 0; i    ok...
  • novrose
  • novrose
  • 2011年08月18日 20:28
  • 1026

for (初始化语句; 判断条件; 循环条件)

public class Test { static boolean foo(char c) { System.out.print(c); return true;...
  • sinat_38500717
  • sinat_38500717
  • 2017年08月25日 21:28
  • 123
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:C语言中对于for语句,变量赋初值问题探讨
举报原因:
原因补充:

(最多只允许输入30个字)