回 帖 发 新 帖 刷新版面

主题:错在哪?

int s(int n)
{
  int i;
  for(i=1;i<=n-1;i++)
  n+=i;
  printf("%d",n);
  return(n);
}
main()

  int n;
  printf("intput number n:");
  scanf("%d",n);
  n=s(n);
  printf("%d",n);
}

回复列表 (共5个回复)

沙发

//#include<stdio.h>
//头函数都不用么?? 那么强~~
int s(int n)
{
  int i;
  for(i=1,i<=n-1,i++)
  n+=i;  //逻辑错误!!!  此处n值改变了,上一句的i<n-1;还有什么哟你呐??
  printf("%d",n);
  return(n);
}
main()  //良好的习惯是应该的:int main(int argc,char *argv[])

  int n;
  printf("intput number n:");
  scanf("%d",n);
  n=s(n);
  printf("%d",n);
}


/**************************************************/
/* 修改过的程序如下,应该对的(还没试过哦!!!) */
#include<stdio.h>
//输入n,计算1+2+...+(n-1)的值(应该是这样的吧???)
int s(int n){
    int i,m=0; //存放计算结果(记得赋初值)
    for(i=1;i<n;i++) m+=i;
    //printf("%d",m); //这句好像不必要
    return (m);
}

int main(argc,argv)
int argc;
char *argv[];
{
    int n;
    printf("Input a number n:");
    scanf("%d",n);
    n=s(n);
    printf("%d",n);
    return 0;
}

板凳


好象运行不对啊!

3 楼

scanf("%d",n); ->scanf("%d",&n);  /* 取地址 */

4 楼


int main(argc,argv)
int argc;
char *argv[];
这句在下面也没用到啊!
为什么要定义这2个变量啊?

5 楼

个人习惯~~~  很多时候用不到~~

你可以写成这样的:int main(){ ...}

我来回复

您尚未登录,请登录后再回复。点此登录或注册