小灰灰58 发表于 2014-8-4 19:08:53

大家都不会吗?》有人解决吗?

#include <stdio.h>
int m=10,n=5,a={1,2,3};

void f1(void){
        static int n=3;
        a=a+a+a;
        n++;
}
void f2(int m)
{for(;m<3;m+=2){
        int m;
        for(m=1;m<4;m++)
                printf("%d,",a);
}
}
main()
{int i;
for(i=0;i<7;i++)   f1();
f2(1);
printf("%d,%d\n",a,a);
}

♂情︵☆缘★ 发表于 2014-8-4 21:19:27

你是想知道错误还是想知道最后输出是啥

牡丹花下死做鬼 发表于 2014-8-4 21:58:16

你想知道什么????

沉默默 发表于 2014-8-5 00:25:11

看不懂想要干嘛

xjm 发表于 2014-8-5 07:55:15

LZ想说什么呀

tractrac 发表于 2014-8-5 08:18:33

f1 没加 循环条件,a 无法初始化

计机羊咩咩 发表于 2014-8-5 21:32:23

本帖最后由 计机羊咩咩 于 2014-8-5 21:33 编辑

void f2(int m)
{for(;m<3;m+=2){
      int m;
      for(m=1;m<4;m++)
                printf("%d,",a);
}

我对这一段疑问很大楼主你想干什么呢?参数intm函数里面又int m这就重定义了
其次此循环for(m=1;m<4;m++) 执行完后m == 5然后在外循环再加2等于 7 这就退出循环了
实际上这个循环感觉是乱套了

twilight1223 发表于 2014-9-4 09:24:50

看着程序是f1要循环调用7次,f2调用一次,由于for循环,在其内部循环了两次

阔怀 发表于 2015-8-6 10:23:15

看看
页: [1]
查看完整版本: 大家都不会吗?》有人解决吗?