学生课程成绩
㈠ 输入6个学生,3门课程的成绩,统计每个学生的总成绩,并将此表按总成绩由高到低排序。
1、电脑打开Excel表格,把六个学生的成绩数据给输入表格中。
㈡ SQL查询,学生表,课程表,成绩表的一个查询要求如下怎么写呢
selects.sid,s.sname,sc.scorefromstudent,course,scwherestudent.sid=sc.sidandcourse.cid=sc.cidandcourse.cname='影视设计';
注意一下,你自己写的sid和sname中间没有逗号,到时候一定执行报错
㈢ mysql查询出01课程成绩大于02课程成绩的学生编号
你的平均成绩是每门课程的平均成绩?还是每个人的平均成绩?
前者要用课程分组,后者要用学号分组,这个是不同的。你要的是哪个?
每门课程中,也就是要用到课程分组。
select a.学号,a.成绩 from 学期成绩表 a,(select 课程编号,avg(成绩) avg_成绩 from 学期成绩表 group by 课程编号) b where b.课程编号=a.课程编号 and a.成绩<b.avg_成绩
因为你只要查学号和成绩,所以和学生表没有关系,学期成绩表中就有学号。
㈣ sql查询语句的问题,“列出成绩大于90的所有学生的姓名、专业、课程名称、成绩”这条语句怎么写
可以参考下面的代码:
select s.姓名, s.专业, sc.成绩, c.课程名称
from 学生基本情况表 s, 成绩表 sc, 课程表 c
where s.学号 = sc.学号 and c.课程编号 = sc.课程编号
and sc.成绩 > 90
(4)学生课程成绩扩展阅读:
sql语句
删除列:
Alter table table_name drop column column_name--从表中删除一列
添加主键:
Alter table tabname add primary key(col)
平均:
select avg(field1) as avgvalue from table1
最大:
select max(field1) as maxvalue from table1
㈤ 查询出01课程成绩大于02课程成绩的学生编号
select a.sid, a.score as score1,b.score as score2 from (select * from scoretable where cid='001') a
left join
(select * from scoretable where cid='002')b
on a.sid=b.sid
where a.score>b.score
㈥ C语言:统计出输入若干个学生课程成绩(在[0,150]之间整数),求共输入几个学生成绩以及它们的平均分
|#include<stdio.h>
#include<malloc.h>
typedefstructstu
{
floatscore;
structstu*next;
}STU;
intmain()
{
floatscoreMin=150,score=0,scoreAve,sum=0;
intcount=0;
STU*stuHead=(STU*)malloc(sizeof(STU));
stuHead->next=NULL;
STU*stuTai=NULL,*stuNew=NULL;
while(1)
{
scanf("%f",&score);
if(score<0||score>150)
break;
stuNew=(STU*)malloc(sizeof(STU));
stuNew->next=NULL;
stuNew->score=score;
if(score<scoreMin)
scoreMin=score;
if(stuHead->next==NULL)
stuHead->next=stuNew;
else
stuTai->next=stuNew;
stuTai=stuNew;
count++;
sum=sum+score;
}
scoreAve=sum/count;
printf("共%d名学生,平均分%.2f,最低分%.2f
",count,scoreAve,scoreMin);
}
㈦ 关于“查询某学生所有课程成绩“的正确SQL语句(多项选择题)
B和C是正确的
A和D的错误都是显而易见,所查询的表没有相关字段
㈧ N个学生各学4门课,查找一门以上课程不及格学生,输出其各门课成绩。(请使用指针函数实现)
#include<stdio.h>
#define M 4/*可以修改*/
#define N 4/*可以修改,这里表示4个学生,三门成绩*/
int main()
{
void search(double (*p)[N]);
double stu[M][N];
printf("请输入%d个学生的%d门成绩:\n",M,N);
for(int i=0;i<M;i++)
for(int j=0;j<N;j++)
scanf("%lf",&stu[i][j]);
search(stu);
return 0;
}
void search(double (*p)[N])/*第一个参数表示p是一个指向有N个double型变量的指针数组的指针变量*/
{
for(int j=0;j<M;j++)//循环M 次,对M个学生的成绩进行检查,发现不及格的即输出
{
int i;
int flag=0;
for(i=0;i<N;i++)//循环N次,对第j个学生的N门课成绩进行检查,发现有不及格的科目,将flag置1。表示第j个学生不及格
if(*(*(p+j)+i)<60)
{
flag=1;
break;
}
if(flag)//如果flag==1表示这个学生不及格,输出其成绩
{
printf("No.%d不及格,其各门成绩:\n",j+1);
for(i=0;i<N;i++)
printf("%5.1f",*(*(p+j)+i));
printf("\n");
}
}
return;
}
㈨ C语言,代码实现。已知学生课程数为N,最低成绩为A,平均成绩为P,求每门成绩可能的分数。
#include "stdio.h"
int solve(int n, double sum, double min)
{
// n表示课程数,sum表示总分,min表示最低分
int ret = 0;
double max; // 可能的最高分
int i = min;
if (n == 1)
{
return 1;
}
max = sum - (n-1)*min;
for (; i<=max; i++)
{
ret += solve(n-1,sum-i,min);
}
return ret;
}
int main()
{
int num; // 科目
double ave; // 平均分
double min; // 最低分
double sum;
scanf("%d",&num);
scanf("%lf",&ave);
scanf("%lf",&min);
sum = num*ave;
printf("%d",solve(num,sum,min));
return 0;
}
可直接运行,望采纳!