#1  用C语言考察你的编码能力(一道简单的试题)#include <stdio.h>
  
  int main( void )
  {
  int i, n=42;
      for(i=0; i<n; i--) printf("*");
  }   
本程序目的是打出42个*,但是错了,现在要求,只能改或加一个字符就实现该功能。(3种方法)
for(i=0; -i<n; i--) printf("*");
for(i=0; i+n; i--) printf("*");
for(i=0; i<n; n--) printf("*");

解决方案 »

  1.   

    for(i=0; i<-n; i--) printf("*");
      

  2.   

    for(i=0; i+n; i--) printf("*");非零即是真,对于用java的人来说确实很牵强,都忘掉了
      

  3.   

    for(i=0; i^n; i--) printf("*");
      

  4.   

    晕死用while,靠,道理都一样啊,呵呵
      

  5.   

    怎么是 i-- 呢! 应该是 i++ 啊: 
    for(i=0; i<n; i++) printf("*");
      

  6.   

    #include <stdio.h>
      
      int main( void )
      {
      int i, n=42;
          for(i=0; i<>n; i--) printf("*");
      }   
    老哥在搞p2p多人视频,换地方,找东家手机:13777763712
      

  7.   

    #include <stdio.h>
      
      int main( void )
      {
      int i, n=42;
          for(i=0; ~i<n; i--) printf("*");
      }   
      

  8.   

    for(i=0; i+n; i--) printf("*");非零即是真,对于用java的人来说确实很牵强,都忘掉了
    --------------------------------------------强。
      

  9.   

    for(i=0; i%n; n--) printf("*");
      

  10.   

    、、 这个 打印 43 个, 不信你 测试 一下
    #include <stdio.h>
      
      int main( void )
      {
      int i, n=42;
          for(i=0; ~i<n; i--) printf("*");
      }   
      

  11.   

    #include <stdio.h>
      
      int main( void )
      {
      int i, n=42;
          for(i=0; !(n+i); i--) printf("*");
      }   
    如果可以不要n的话,就不用那么麻烦了:
    #include <stdio.h>
      
      int main( void )
      {
          for(i=42; !i; i--) printf("*");
      }   
      

  12.   

    没有看清楚规则,呵呵
    重新写:
    #include <stdio.h>
      
      int main( void )
      {
      int i, n=-42;
          for(i=0; i<n; i--) printf("*");
      }