|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 起什么名字 于 2013-5-4 15:23 编辑
下面两个例子,不同的是printf一个在for花括号范围内,一个在for花括号范围外。
1.
#include <stdio.h>
void main()
{
int i,a[10];
for(i=0;i<10;i++)
{
a【i】=i;
}
printf("%d ",a【i】);
}
运行答案:10
2.
#include <stdio.h>
void main()
{
int i,a[10];
for(i=0;i<10;i++)
{
a【i】=i;
printf("%d ",a【i】);
}
}
运行结果:0 1 2 3 4 5 6 7 8 9
谁能详细解释一下为什么会这样,按我的理解运行结果不是都跟例子2是一样的吗?
请再解释一下,for花括号的范围是以什么?花括号不知道放在哪结束。
===========================================================================
再举一个例子:
动态赋值10个数,输出最大值(这程序在小甲鱼C语言第24个视频中出现)
#include <stdio.h>
void main()
{
int i,max,a[10];
printf("piease input 10 numbers:\n");
for(i=0;i<10;i++)
{
scanf("%d",&a);
}
for(i=0;i<10;i++)
{
if(max<a【i】)
{
max=a【i】;
}
printf("%d",max); //按我的理解printf是在这里才对,但是运行结果不正确
}
printf("%d",max); //把printf放在这里,运行结果才正确
getch();
}
求各位能解答为什么会这样???
|
|