C程序问题
-------这个我怎么输出的是内存的空间我只要最后的值-----------------
#include "stdio.h"
main()
{
int cj1,cj2,cj3,sum;
sum = (cj1+cj2+cj3)/3;
printf("请输入3门课程的总成绩\n");
scanf("%d%d%d",&cj1,&cj2,&cj3);
if(cj1>100 || cj2>100 || cj3>100)
{
printf("不能超过100分,输入错误");
}
else if(cj1>=50 && cj2>=50 && cj3>=50){
printf("3门都及格");
printf("平均成绩 sum=%d",sum);
}
else
{
printf("总成绩不及格");
}
}
----------------------考试题目-----------------------------------
题目:考试结果判断
请用C语言编写一个程序,完成如下功能:一所大学举行了英语、数学、语文三门课程的考试,要通过此次考试,每门课程的分数必须达到50分,且平均分要达到55分。
推荐布聚:
定义四个变量,用来存储学生三门课程的成绩和平均分数。
接受一个学生三门课程的成绩。
如果三门课程中有一门分数没有达到50分,则该学生没有通过此次考试,输出信息:You failed in the examination!,如图一。
如果三门课程中有一门分数都达到50分,则计算三门课程的平均分数,如果平均分数达到了55分,输出信息:You passed in the examination!,如果平均分数没有达到55分,输出信息:You failed in the examination!,如图二、三。
运行结果
图一
图二
图三
注意事项:
1、 学生考试成绩,2、 可只考虑整数分数情况,3、 输出小数的情形可不4、 考虑;
5、 可不6、 考虑学生成绩的最大和最小分数范围的判断,7、 输出的学生成绩只考虑正常的数据0-100。输入非数字(如输入字母)的情形也可不8、 考虑;
9、 不10、 考虑学生成绩的连续判断,11、 程序运行每次只输入和判断一个学生的成绩就退出即可;
参考答案:int cj1,cj2,cj3,sum;
sum = (cj1+cj2+cj3)/3;
楼主,这样写是不行的。你的cj1,cj2,cj3三个变量都没有初始化,里面的值都是些垃圾值,你用
sum = (cj1+cj2+cj3)/3;
算出来的当然是垃圾值了,你把原来的
sum = (cj1+cj2+cj3)/3;删掉
然后把printf("平均成绩 sum=%d", sum );
改为
printf("平均成绩 sum=%d", sum = (cj1+cj2+cj3)/3 );就可以了