c语言例题 谢谢

来源:百度知道 编辑:UC知道 时间:2024/05/12 10:43:37
void main()
{
int n;
printf("input number\n");
scanf("%d",&n);
s(n);
printf("n=%d\n",n);
}
int s(int n)
{
int i;
for(i=n-1;i>=1;i--)
n=n+i;
printf("n=%d\n",n); 输入100 for语句中i=99 则n变为199 对吗? for(i=n-1;i>=1;i--)应定义为n-- 怎么是i--啊

执行一次循环体以后n是等于199
for语句的含义是
第一个语句i=n-1为i赋初值
判断是否满足第二个语句的条件,如果满足则执行循环体,然后执行第三个语句,否则跳出循环体
再执行第二个语句进行判断,满足继续执行循环体,再执行第三个语句,否则跳出循环体
周而复始
所以是i--