#include "stdioh"
int main()
{
int score;
scanf("%d",&score);
if(score>60 && score<=100)
printf("成绩合格\n");
else if(score<60 && score>=0)
printf("成绩不合格\n");
else
printf("输入的成绩有误\n");
}
例如:
#include<stdioh>
int main()
{
int a[5];
int i, index = 0;
printf("请输入五个学生的成绩, 用空格隔开:\n");
for(i = 0; i < 5; ++i)
{
zhiscanf("%d", &a[i]);
}
index = 0;
for (i = 0; i < 5; ++i)
{
if (a[index] < a[i])
{
index = i;
}
}
printf("最高分:%d\n", a[index]);
printf("不及格分数:\n");
for(i = 0; i <5; ++i)
{
if (a[i] < 60)
{
printf("%d\n", a[i]);
}
}
}
扩展资料:
C语言包含的各种控制语句仅有9种,关键字也只有32 个,程序的编写要求不严格且以小写字母为主,对许多不必要的部分进行了精简。实际上,语句构成与硬件有关联的较少,且C语言本身不提供与硬件相关的输入输出、文件管理等功能,如需此类功能,需要通过配合编译系统所支持的各类库进行编程,故c语言拥有非常简洁的编译系统。
C语言是一种结构化的语言,提供的控制语句具有结构化特征,如for语句、if⋯else语句和switch语句等。可以用于实现函数的逻辑控制,方便面向过程的程序设计。
参考资料来源:百度百科-c语言
#include<stdioh>
int main()
{
int nscore = 0;
scanf("%d",&nscore);
if ( nscore > 90 )
{
printf("成绩优!\n");
}
else if ( nscore > 80 )
{
printf("成绩良!\n");
}
else if ( nscore > 60 )
{
printf("成绩及格!\n");
}
else
{
printf("成绩不及格!\n");
}
return 0;
}
一、首先打开VC++
二、文件》》新建
三、创建一个C++空白文档头文件是必须声明的# include <stdioh>
四、说下主体思想我们定义一个求每门课平均成绩的函数AverageCourse它的形参一个是二维数组,用来传递学生成绩;一个是指针变量(数组名),存放每门课的平均成绩:
void AverageCourse(float score[][4],float avg)
{
int i,j;
float sum;
for(i=0;i<4;i++)
{
sum=0;
for(j=0;j<4;j++)
sum+=score[j][i];
avg[i]=sum/4;
}
}
五、之后我们定义一个求总平均成绩的函数AverageAll
它的形参一个是指针变量(数组名),传递一个首地址
n是要计算的成绩个数
float AverageAll(float score, int n)
{
int i=0;
float sum = 0;
while(i<n)
{
sum+=score[i];
i++;
}
return sum/n;
}
六、我们还需定义一个查询学生成绩的函数AStudentScore
它的形参一个是指向数组的指针,n是要计算的学生号
void StudentScore(float(score)[4], int n)
{
int i;
for(i=0; i<4; i++)
printf("%42f ", ((score+n)+i));
printf("\n");
}
下面是主函数
int main()
{
int num,i;
//定义一个数组aveCourse来存储每门课的平均成绩,
定义变量aveAll来存储总的平均成绩
float aveAll,aveCourse[4];
float score[4][4] = {{67, 78, 45, 88}, {76, 54, 90, 69},
{99, 45, 88, 99}, {98, 69, 77, 87}};//这是成绩,可以用scanf输入,也可以在这里定义
/ 调用函数AverageAll求16个分数的平均分 /
aveAll=AverageAll(&score[0][0],16);
printf("The average of all courses is:\n %f\n\n",aveAll);
/ 调用函数AverageCourse求4门客的平均分 /
AverageCourse(score,aveCourse);
for(i=0;i<4;i++)
printf("The average of %dth course is:\n %f\n",i,aveCourse[i]);
/ 求出序号是num的学生的成绩 /
printf("\nPlease input the num of student(0-3):\n");
scanf("%d", &num);
printf("The score of the %dth student is:\n",num);
StudentScore(score,num);
getch();
return 0;
}
七、程序运行结果
c语言:
C语言是一种计算机程序设计语言,它既具有高级语言的特点,又具有汇编语言的特点。它由美国贝尔研究所的DMRitchie于1972年推出,1978年后,C语言已先后被移植到大、中、小及微型机上,它可以作为工作系统设计语言,编写系统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序。它的应用范围广泛,具备很强的数据处理能力,不仅仅是在软件开发上,而且各类科研都需要用到C语言,适于编写系统软件,三维,二维图形和动画,具体应用比如单片机以及嵌入式系统开发。
#include<stdioh>
int main()
{
int i,b;
printf("输入学生数量:");
scanf("%d",&b);
float a[b],sum,max;
for(i=0;i<b;i++)
{
printf("第%d个学生的成绩:",i+1);
scanf("%f",&a[i]);
}
max=a[0];
for(i=0;i<b;i++)
{
if(a[i]>max)
max=a[i];
sum+=a[i];
}
printf("max=%f\n",max);
printf("平均数:%f\n",sum/b);
}
#include "stdioh"
/定义学生结构体/
struct Student
{
char ID[20];
char Name[20];
float Mark1;
float Mark2;
float Mark3;
float Average;
};
/声明学生数组及学生数量/
struct Student students[1000];
int num=0;
/求平均值/
float Avg(struct Student stu)
{
return (stuMark1+stuMark2+stuMark3)/3;
}
/通过学号返回数组下标/
int Student_SearchByIndex(char id[])
{
int i;
for (i=0;i<num;i++)
{
if (strcmp(students[i]ID,id)==0)
{
return i;
}
}
return -1;
}
/通过姓名返回数组下标/
int Student_SearchByName(char name[])
{
int i;
for (i=0;i<num;i++)
{
if (strcmp(students[i]Name,name)==0)
{
return i;
}
}
return -1;
}
/显示单条学生记录/
void Student_DisplaySingle(int index)
{
printf("%10s%10s%8s%8s%8s%10s\n","学号","姓名","成绩","成绩","成绩","平均成绩");
printf("-------------------------------------------------------------\n");
printf("%10s%10s%82f%82f%82f%102f\n",students[index]ID,students[index]Name,
students[index]Mark1,students[index]Mark2,students[index]Mark3,students[index]Average);
}
/插入学生信息/
void Student_Insert()
{
while(1)
{
printf("请输入学号:");
scanf("%s",&students[num]ID);
getchar();
printf("请输入姓名:");
scanf("%s",&students[num]Name);
getchar();
printf("请输入成绩:");
scanf("%f",&students[num]Mark1);
getchar();
printf("请输入成绩:");
scanf("%f",&students[num]Mark2);
getchar();
printf("请输入成绩:");
scanf("%f",&students[num]Mark3);
getchar();
students[num]Average=Avg(students[num]);
num++;
printf("是否继续(y/n)");
if (getchar()=='n')
{
break;
}
}
}
/修改学生信息/
void Student_Modify()
{
float mark1,mark2,mark3;
while(1)
{
char id[20];
int index;
printf("请输入要修改的学生的学号:");
scanf("%s",&id);
getchar();
index=Student_SearchByIndex(id);
if (index==-1)
{
printf("学生不存在!\n");
}
else
{
printf("你要修改的学生信息为:\n");
Student_DisplaySingle(index);
printf("-- 请输入新值--\n");
printf("请输入学号:");
scanf("%s",&students[index]ID);
getchar();
printf("请输入姓名:");
scanf("%s",&students[index]Name);
getchar();
printf("请输入成绩:");
scanf("%f",&students[index]Mark1);
getchar();
printf("请输入成绩:");
scanf("%f",&students[index]Mark2);
getchar();
printf("请输入成绩:");
scanf("%f",&students[index]Mark3);
getchar();
students[index]Average=Avg(students[index]);
}
printf("是否继续(y/n)");
if (getchar()=='n')
{
break;
}
}
}
/删除学生信息/
void Student_Delete()
{
int i;
while(1)
{
char id[20];
int index;
printf("请输入要删除的学生的学号:");
scanf("%s",&id);
getchar();
index=Student_SearchByIndex(id);
if (index==-1)
{
printf("学生不存在!\n");
}
else
{
printf("你要删除的学生信息为:\n");
Student_DisplaySingle(index);
printf("是否真的要删除(y/n)");
if (getchar()=='y')
{
for (i=index;i<num-1;i++)
{
students[i]=students[i+1];
}
num--;
}
getchar();
}
printf("是否继续(y/n)");
if (getchar()=='n')
{
break;
}
}
}
/按姓名查询/
void Student_Select()
{
while(1)
{
char name[20];
int index;
printf("请输入要查询的学生的姓名:");
scanf("%s",&name);
getchar();
index=Student_SearchByName(name);
if (index==-1)
{
printf("学生不存在!\n");
}
else
{
printf("你要查询的学生信息为:\n");
Student_DisplaySingle(index);
}
printf("是否继续(y/n)");
if (getchar()=='n')
{
break;
}
}
}
/按平均值排序/
void Student_SortByAverage()
{
int i,j;
struct Student tmp;
for (i=0;i<num;i++)
{
for (j=1;j<num-i;j++)
{
if (students[j-1]Average<students[j]Average)
{
tmp=students[j-1];
students[j-1]=students[j];
students[j]=tmp;
}
}
}
}
/显示学生信息/
void Student_Display()
{
int i;
printf("%10s%10s%8s%8s%8s%10s\n","学号","姓名","成绩","成绩","成绩","平均成绩");
printf("-------------------------------------------------------------\n");
for (i=0;i<num;i++)
{
printf("%10s%10s%82f%82f%82f%102f\n",students[i]ID,students[i]Name,
students[i]Mark1,students[i]Mark2,students[i]Mark3,students[i]Average);
}
}
/将学生信息从文件读出/
void IO_ReadInfo()
{
FILE fp;
int i;
if ((fp=fopen("Databasetxt","rb"))==NULL)
{
printf("不能打开文件!\n");
return;
}
if (fread(&num,sizeof(int),1,fp)!=1)
{
num=-1;
}
else
{
for(i=0;i<num;i++)
{
fread(&students[i],sizeof(struct Student),1,fp);
}
}
fclose(fp);
}
/将学生信息写入文件/
void IO_WriteInfo()
{
FILE fp;
int i;
if ((fp=fopen("Databasetxt","wb"))==NULL)
{
printf("不能打开文件!\n");
return;
}
if (fwrite(&num,sizeof(int),1,fp)!=1)
{
printf("写入文件错误!\n");
}
for (i=0;i<num;i++)
{
if (fwrite(&students[i],sizeof(struct Student),1,fp)!=1)
{
printf("写入文件错误!\n");
}
}
fclose(fp);
}
/主程序/
main()
{
int choice;
IO_ReadInfo();
while(1)
{
/主菜单/
printf("\n------ 学生成绩管理系统------\n");
printf("1 增加学生记录\n");
printf("2 修改学生记录\n");
printf("3 删除学生记录\n");
printf("4 按姓名查询学生记录\n");
printf("5 按平均成绩排序\n");
printf("6 退出\n");
printf("请选择(1-6):");
scanf("%d",&choice);
getchar();
switch(choice)
{
case 1:
Student_Insert();
break;
case 2:
Student_Modify();
break;
case 3:
Student_Delete();
break;
case 4:
Student_Select();
break;
case 5:
Student_SortByAverage();
Student_Display();
break;
case 6:
exit();
break;
}
IO_WriteInfo();
}
}
#include<stdioh>
#include<stdlibh>
//定义一个学生结构体数组
struct Student{
int id;
double score;
}Student[100];
//记录实际导入学生个数
int len = 0;
//求最高分
void getmax() {
int maxid = 0;
double maxscore = -1;
for (int i = 0; i < len; i++) {
if (Student[i]score > maxscore) {
maxscore = Student[i]score;
maxid = Student[i]id;
}
}
printf("班级最高分为:%2lf学号是:%d\n", maxscore, maxid);
}
//求最低分
void getmin() {
int minid = 0;
double minscore = 101;
for (int i = 0; i < len; i++) {
if (Student[i]score < minscore) {
minscore = Student[i]score;
minid = Student[i]id;
}
}
printf("班级最低分为:%2lf学号是:%d\n", minscore, minid);
}
//求总分
double getsum() {
double sum = 0;
for (int i = 0; i < len; i++) {
sum += Student[i]score;
}
return sum;
}
//求平均分
double getave() {
double ave = 0;
return getsum() / len;
}
//导入学生信息
void input() {
int id = 0;
double score = 0;
while (1) {
printf("请输入学生学号:");
scanf_s("%d", &id);
if (id == -1) { break; }
printf("请输入学生成绩:");
scanf_s("%lf", &score);
Student[len]id = id;
Student[len]score = score;
len++;
}
printf("信息导入完毕!\n");
}
int main() {
input();
printf("全班总分为:%2lf\n", getsum());
printf("全班平均分为:%2lf\n", getave());
getmax();
getmin();
return 0;
}
注:此代码运行于VS2017,如果在VC60中运行,可将scanf_s改成scanf
并且for(int i=0;i<len;i++){xxx}改成int i=0;for(i=0;i<len;i++){xxx}即可正常运行
程序运行测试图如下:
以上就是关于C语言编程--输入5个学生成绩 判断是否及格全部的内容,包括:C语言编程--输入5个学生成绩 判断是否及格、c语言 输入一个学生成绩,判断优、良、及格、c语言作业 编写一个输出学生成绩等级的程序等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)