解:算法:
S1输入a;
S2如果a≥90,则输出A,结束算法,否则执行S3;
S3如果a≥80,则输出B,结束算法,否则执行S4;
S4如果a≥70,则输出C,结束算法,否则执册迟银行S5;
S5如州宴果a≥60,则输旦敏出D,结束算法,否则输出E。
流程图如图所示:
程序如下:
一、首先打开VC++
二、文件》》新建
三、创建一个C++空白文档头文件是必须声明的# include <stdio.h>
四、说下主体思想我们定义一个求每门课平均成绩的函数AverageCourse它的形参一个是二维数组,用来传递学生成绩;一个是指针变量(数组名),存放每门课的平均成绩:
void AverageCourse(float score[][4],float *avg)
{
int i,j
float sum
for(i=0i<4i++)
{
sum=0
for(j=0j<4j++)
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=0i<4i++)
printf("%4.2f ", *(*(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=0i<4i++)
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语言是一种计算机程序设计语言,它既具有高级语言的特点,又具有汇编语言的特点。它由美国贝尔研究所的D.M.Ritchie于1972年推出,1978年后,C语言已先后被移植到大、中、小及微型机上,它可以作为工作系统设计语言,编写系统应用程序,也可以作为应用程序设计语数举言,编写不依赖计算机硬件的应用程序。它的应用范围广泛,具备很强的数据处理能力,不仅仅是在软件开发上,而且各类科研都需要用到C语言,适于编写系统软件,三维,二维图形和动画,具体应用比如单片机以及嵌入式系统开发。
#include <stdio.h>
int main()
{
int score, m
scanf("%d", &score)
while (score <0 || score >100){
printf("Error! Retry!\n")
scanf("%d", &score)
}
m= score / 10
if (m>= 9)
printf("Grade is A!\n")
switch(m){
case 0: printf("Grade is E!\n")break
case 1: printf("Grade is E!\n")break
case 2: printf("Grade is E!\n")break
case 3: printf("Grade is E!\n")break
case 4: printf("Grade is E!\n")break
case 5: printf("Grade is E!\n")break
case 6: printf("Grade is D!\n")break
case 7: printf("Grade is C!\n")break
case 8: printf("Grade is B!\n")break
}
return 0
}
扩展资料:
其他实现输出成绩等级‘A'、’B‘、'C'、‘D'、'E’。90分以上为A,80~89分为B,70~79分为C,60~69分为D,60分一下为知并E的方扰猛戚缓陵法:
#include <stdio.h>
int main()
{
int score
scanf("%d", &score)
while (score <0 || score >100){
printf("Error! Retry!\n")
scanf("%d", &score)
}
if (score <60)
printf("Grade is E!\n")
else if (score >= 60 &&score <70)
printf("Grade is D!\n")
else if (score >= 70 &&score <80)
printf("Grade is C!\n")
else if (score >=80 &&score <90)
printf("Grade is B!\n")
else
printf("Grade is A!\n")
return 0
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)