简单C语言改错,刚开始学的,编了一个小程序就是不知道哪里有问题,不会改。求C语言大神帮忙 小弟刚学c语言,编个小程序发现错误,求大神指教哪里出错,感激...

作者&投稿:姚环 (若有异议请与网页底部的电邮联系)

这句,你多写了拦郑个双引号。

你的问题很多,你里边有两个函数都没有写执行体

void num_kecheng();

void inputstu();

这两个函数仅仅定义了,但是没有方法执行

你的flag变量定义了两次而且都没有给赋初值,你全局定义了一次局部又定义了一次。看你的代码估计就想用一个所以不要再main()函数中在定义了。我大概把问题找完了,因为没枣没具体看你的代码是做什么的,所以后边两个方法你自己补齐一下

#include<stdio.h>

#include<stdlib.h>

#define N 10

#define M 3

int password();

void menu();

void num_score();

void kecheng_score();

void num_kecheng();

void inputstu();

int score[N][M],i,j,num,flag=0;

float sum;

int main()

{

int select;

password();

while(flag)

{

system("cls");

menu();

printf("*************************
");

printf(" 请选择主菜单序号1-5:");

scanf("%d",&select);

switch(select)

{

case 1:num_score() ;break;

case 2:kecheng_score();break;

case 3:num_kecheng();break;

case 4:inputstu();break;

case 5:flag=0;

}

}

}

int password()

{

int i;

long pw;

system("cls");

for(i=3;i>0;i--)

{

printf("
请输入密码(您还有%d次机会)
",i);

scanf("%d",&pw);

if(pw==123456){flag=1;break;}

else flag=0;

}

return flag;

}

void menu()

{

printf("

");

printf(" 欢迎使用学生查询系统!

");

printf("***********************************");

printf(" 请选择查询对象:

");

printf(" 1 欢迎使用学生查询系统!

");

printf(" 2 据学查询成绩及平均成绩

");

printf(" 3 据学生学查询学简岩颂生成绩

");

printf(" 4 学生原始数据依次输入

");

printf(" 5 退出本系统

");

}

void num_score()

{

printf("请输入查询学生的学号
");

scanf("%d",&num);

for(i=0;i<N;i++)

if(num==score[i][0])

for(j=1;j<M;j++)

{

printf("%d号课程成绩是%d
",j,score[i][j]);

sum+=score[i][j];

}

printf("%d号学生的平均成绩为%d
",num,sum/(M-1));

}

void kecheng_score()

{

printf("查询课程的代号(1-%d):
",M-1);

scanf("%d",&j);

for(i=0;i<N;i++)

{

printf("查询课程的代号(1-%d):
",M-1);

scanf("%d",&score[i][j]);

}

}

void num_kecheng(){

}

void inputstu(){

}



kecheng_score函数缺一个}结束



刚开始学C语言,编了一个简单的程序却怎么也运行不出结果,到底是哪有问题求大神指点~

主要问题是函数类型没写,是int main 还是 void main。还有输出的时候,要输出几个值,就要写几个%d。

#includeint main(){double b=1.0,sum1=0.0;int a; //循环控制变量最好是整数for(a=1;a<=5;a++) //{ b=a*b;sum1=sum1+b; }printf("sum1=%lf
",sum1); //变量不要放到引号中 double sum2=0.0;int c; //for(c=1;c<=8;c++) //{sum2=sum2+c*c; } printf("sum2=%lf
",sum2);double sum3=0.0;int d; for(d=1;d<=10;d++) {sum3=sum3+1.0/d; //因为d是整数,所以,用1.0来运算,保证小数 }printf("sum3=%lf
",sum3);double sum0; sum0=sum1+sum2+sum3;printf("sum1+sum2+sum3=%lf
",sum0); //return 0;}

c语言改错
答:一开始编你的,我用vs只有四个错误 这是我改过的,希望有帮助 include "stdafx.h"include<stdio.h> include<malloc.h> typedef char ElemType;typedef struct LNode { ElemType data;struct LNode *next;}LinkList;void InitList(LinkList *&L){ L=(LinkList *)malloc(sizeof(LinkList));L->...

简单的C语言程序求改错
答:修改好的代码,请参考 include <stdio.h> include <malloc.h> struct node{ char a;struct node *next;};int main(){ struct node *p,*head,*last;p=(struct node *)malloc(sizeof(struct node));scanf("%c",&p->a);for(head=p;p->a!='#';p=p->next){ p->next=(struct ...

C语言刚开始学 ~~有个改错题不会~~
答:include "stdio.h"; /* 这里多了分号 */ main(){float r,s;r=5.0;s=3.14159*r*r;printf("%f\n",s) /* 这里少了分号 */ } include "stdio.h"main(){float a,b,c,v;a=2.0;b=3.0;c=4.0 /* 这里少分号 */ v=a*b*c;printf("%f\n",v) /* 这里少分号 */ } ...

C语言编程改错
答:include<stdio.h> void f(char *s,int *x,int *y,int *z);void main(){ char s[]="af123 fa456f sdfsd8 12445";int a,b,c;f(s,&a,&b,&c);printf("zimu=%d,kongge=%d,shuzi=%d",a,b,c);} void f(char *s,int *x,int *y,int *z){ char *p=s;int a=0,b=...

c语言初学者,求改错。
答:gets会遇到输入缓冲区中的回车符,导致什么字符都没输入就直接返回 把gets(a[n]);换成scanf("%s",a[n]);就可以了

C语言编程改错
答:include<stdio.h> struct STUDENT { char name[20];int number;int age;float chinese,math,english,average;};main(){ struct STUDENT s1,s2,s3;float ch,ma,eng;int agee;scanf("%s%d%d%f%f%f",s1.name,&s1.number,&s1.age,&s1.chinese,&s1.math,&s1.english);scanf("%s%d...

c语言 改错题 刚把忙谢了
答:include<stdio.h> int main(){ int i,n,s;s=1;//此处 printf("Please enter n:");scanf("%d",&n);for(i=1;i<=n;i++)//此处 s=s*i;printf("%d! = %d\n",n,s);return 0;}

c语言程序设计改错
答:include "math.h"include "stdio.h"float area(float,float,float); ///---改,要有返回值声明 main() //---改,不用加void,用void不能保证所有的编译器都能通过 { float a,b,c;printf("请输入三角形的三个边长值:\n");scanf("%f%f%f",&a,&b,&c);if(a+b>c&&a+c>b&&b+...

大一上 C语言 简单改错题 求解
答:str[1]中存储的是一个字符串指针,指向“Kay”,这个指针所指向的内容是不可更改的!因为定义时前面使用了const修饰,标志着所定义的是只读变量,所以第二句试图改变str[1]指向的内容为另一个字符串是非法的。删去第二句,或者删去const 另外还有一个小错误,就是字符串应该用双引号,不用单引号 ...

c语言编程题改错
答:1.设计本身就有问题,把两个数都分解因式后在计算比较,不知道你考虑过这个程序的效率没有!include <stdio.h> int func(int n){int s,k;for(k=2,s=1;k<=n/2;k++)if(n%k==0) s=s+k;return s;} main(){ int m,i,p,q;for(m=2;m<=3000;m++){ p=func(m);q=func(p);...