当前位置:首页 » 考试成绩 » 从键盘输入10个学生的成绩

从键盘输入10个学生的成绩

发布时间: 2020-11-30 04:57:28

1. 从键盘输入10个学生的成绩存储在数组中,求成绩最高者的序号和成绩,且最高分为并列是两人需要分别输出

这里给出实现思路,你用哪种语言都可以。
1.读取用户电脑输入的数字,读取的内容包括姓名和成绩和换行符,应判断,输入内容包含空格,空格之前是姓名,空格之后是成绩,成绩应该是数字型,读取到换行符认为一个人的成绩读取完毕,开始读取下一个人。如果输入不满足以上条件,应该在屏幕上提示输入的问题,让用户重新输入。
2.读取之前,做一个全局变量,整形,每正确读取一个成绩,全局变量+1,记录读取的序号,一旦读取错误,序号不增加。
3.做一个对象,存放学生信息,对象包括,姓名,成绩,序号。每成功读取一个学生信息,new一个新对象,保存学生信息。
4.做一个全局变量的数组,用来存放成绩最高的学生,每成功读取一个学生信息,从数组中取出最后一个对象,将对象的成绩与输入的成绩做比较,如果数组中对象成绩大于输入成绩,则不处理;如果相等,则再向数组中加入当前对象;如果小于,则将数组清空,将当前学生信息加入到数组中。比较之前,如果判断当前数组的长度为0,则代表数组中没有数据,不用比较,直接将当前学生信息加入到数组中即可。

2. 编写程序从键盘输入10个学生的某门课程的成绩,找出成绩最高的同学并输出其成绩(用指针方式进行查找)

#include<stdio.h>
#define N 10
void main() { float a[N],*p,*q; int i;
for ( i=0;i<N;i++ ) scanf("%f",&a[i]);
p=a; q=p+1; for ( i=1;i<N;i++,q++ ) if ( *p<*q ) p=q;
printf("最高成绩:%.2f\n",*p);
}

3. C语言:编写一个程序,从键盘输入10个学生成绩,求平均成绩。

/*
C语言:编写一个程序,从键盘输入10个学生成绩,求回平均答成绩
*/
#include<stdio.h>
#defineN10
intmain()
{
floatarr[N]={0.0},s=0.0;
inti;
for(i=0;i!=N;++i){//输入
scanf("%f",&arr[i]);
s+=arr[i];
}
printf("%0.2f ",s/N);//输出平均数
return0;
}

4. 用c语言的fun函数编写程序:从键盘输入10个学生的成绩,统计及格(60分及60分以上的)人数

代码如下:

#include <stdio.h>

//判断及格人数

int fun(int a[10]){

int i, count=0;

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

if(a[i]>=60) count++;

return count;

}

int main(){

int a[10],i;

printf("请输入10名学生的成绩: ");

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

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

int count = fun(a);

printf("及格的人数为:%d ", count);

return 0;

}

程序运行结果:内

(4)从键盘输入10个学生的成绩扩展阅读

C语言中对数容字的统计:可以通过循环数组的方式去一个一个的比较数字的大小,然后进行统计。首先可以通过循环的方式读取每个数字,然后存到数组中。把数组传入到fun函数,在循环数组对每个数字进行比较统计。

5. 编程实现:从键盘输入10个学生的成绩,统计并输出80分以上学生的人数。要求:①定义并使用自定义函数

如图

//编程实现:从键盘输入10个学生的成绩,统计并输出80分以上学生的人数。
//要求:①定义并使用自定义函数intfun(floatarr[],intn)实现统计80分以上人数的功能。
//②输入输出功能由主函数实现。
//(思考:①如何统计不及格学生的人数。②如何求出平均分
#include<stdio.h>
#include<malloc.h>
typedefstructfun_Total{
intgoodNUM; //80分以上人数
intfailNUM; //不及格人数
floatave; //平均分
}fun_Total;
fun_Total*fun(floatarr[],intn)
{
inti;
fun_Total*R=(fun_Total*)malloc(sizeof(fun_Total));
R->goodNUM=0;R->failNUM=0;R->ave=0;
for(i=0;i<n;i++){
R->ave+=arr[i];
if(arr[i]>80)R->goodNUM++; //80以上即>80
elseif(arr[i]<60)R->failNUM++;
}
R->ave/=n;
returnR;
}
voidmain()
{
inti=0,n=10;
floatarr[10];
fun_Total*RT;
printf("请输入学生的分数(按回车完成每个人的成绩输入) ");
for(i=0;i<n;i++){
printf("第%d名学生分数=",i+1);
scanf("%f",&arr[i]);
if(arr[i]>100||arr[i]<0)
{
printf("输入非法! ");
i--;
}
}
RT=fun(arr,n);
printf(" 80分以上的学生有%d人 ",RT->goodNUM);
printf(" 不及格的学生有%d人 ",RT->failNUM);
printf(" 平均分为%f ",RT->ave);
free(RT);
}

6. 6.编写程序,由键盘任意输入10个学生的成绩,分别统计各分数段的百分比。

#include<stdio.h>
#include<stdlib.h>
int main(void)
{
int i,a[10];
float b,c,n,e,x;
for(i=0;i<10;i++)
scanf("%d",&a[i]);
b=0;
c=0;
n=0;
e=0;
x=0;
for(i=0;i<10;i++)
{
if(a[i]>=90)b++;
else if(a[i]>=80 && a[i]<90)c++;
else if(a[i]>=70 && a[i]<80)n++;
else if(a[i]>=60 && a[i]<70)e++;
else
x++;
}
b=0.1f*b;
c=0.1f*c;
n=0.1f*n;
e=0.1f*e;
x=0.1f*x;
printf("优、复良、中制、及格、不及格的人数所占比例分别为;%f,%f,%f,%f,%f\n",b,c,n,e,x);

system("pause");
return 0;
}

7. c语言从键盘输入10个学生的成绩,建立一个一维数组,求学生的平均成绩

#include<stdio.h>
void main(){
float result[10],avg=0,sum=0;
int i=0;
for(i=0;i<10;i++){
printf("请输入第%d个学生的成绩:回",(i+1));
scanf("%f",&result[i]);
while(result[i]<0){
printf("成绩不能小于0,请重新输入");
printf("请输入第%d个学生的成绩:",(i+1));
scanf("%f",&result[i]);
if(result[i]>0){
sum+=result[i];
continue;
}
}
sum+=result[i];
}
avg = sum / 10;
printf("这10个学生的平答均成绩是:%f",avg);
}

8. C语言编程,从键盘输入10个学生的成绩,试统计出他们的成绩总和及平均值

#include <stdio.h>

#define MAX 10

struct student {
char no[10];
char name[10];
float score[3];
}stu[MAX];

float ave_course[3] = {0};
float ave_student[MAX] = {0};

int max_ave_i = 0; // 存储平均分最高的学生索引
int max_course_i[3] = {0}; //存储单科分数,最高的学生索引

// 录入学生成绩
void input(int n) {
int i;
for(i=0; i<n; i++) {
scanf("%s %s", stu[i].no,stu[i].name);
scanf("%f %f %f", &stu[i].score[0], &stu[i].score[1], &stu[i].score[2]);
}
}

// 计算平均成绩
void average(int n){
int i,j;
float max_ave = 0.0f;
float max_course[3] = {0};

// 计算每门课的平均成绩
for(i=0; i<n; i++) {
for(j=0; j<3; j++) {
ave_course[j] += stu[i].score[j];

if(max_course[j]<stu[i].score[j]){
max_course[j]<stu[i].score[j];
max_course_i[j] = i;
}
}
}

for(j=0; j<3; j++) {
ave_course[j] /= n;
}

// 计算每个学生的平均成绩
for(i=0; i<n; i++) {
for(j=0; j<3; j++) {
ave_student[i] += stu[i].score[j];
}
ave_student[i] /= 3;
if(max_ave < ave_student[i]) {
max_ave = ave_student[i];
max_ave_i = i;
}
}
}

void main () {
int i,j;

printf("请输入学生的学号 姓名 语文 数学 英语");
input(MAX);

average(MAX);
printf("\n课程的平均成绩是: %6.2f %6.2f %6.2f\n",ave_course[0],ave_course[1],ave_course[2]);

printf("\n学生的平均成绩是: \n");
for(i=0; i<MAX; i++) {
printf(" %s %s %6.2f\n", stu[i].no, stu[i].name, ave_student[i]);
}

printf("平均分,最高的学生:\n");
printf(" 学号=%s, 姓名=%s, 平均分=%6.2f:\n", stu[max_ave_i].no, stu[max_ave_i].name, ave_student[max_ave_i]);

printf("语文,最高分的学生:\n");
i=max_course_i[0];
printf(" 学号=%s, 姓名=%s, 成绩=%6.2f:\n", stu[i].no, stu[i].name, stu[i].score[0]);

printf("数学,最高分的学生:\n");
i=max_course_i[1];
printf(" 学号=%s, 姓名=%s, 成绩=%6.2f:\n", stu[i].no, stu[i].name, stu[i].score[1]);

printf("英语,最高分的学生:\n");
i=max_course_i[2];
printf(" 学号=%s, 姓名=%s, 成绩=%6.2f:\n", stu[i].no, stu[i].name, stu[i].score[2]);

getchar();
getchar();
}

9. c语言。从键盘输入10个学生成绩,求最高和最低分

这个同学.
代码我就不给你了但是我可以给你把思路理一下
首先
定义从键盘接受的数组.
然后通过循环当然循环变量就是这个数组的长度.
可在外部定义一个最大和最小数
在循环中判断如果当前循环的这个数大则直接给大的赋值
如果小就给小的赋值.
打印输出就好.

10. 编程实现:从键盘输入10个学生的成绩,计算出平均分,并输出低于平均分的学生成绩大神们帮帮忙

#include<stdio.h>

int main()

{

int i,j;

float students[10];

float sum=0,average;

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

{


printf("请输入的学生的成绩:");

scanf("%f",&students[i]);

sum=sum+students[i];

}

average=sum/10;

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

if (students[i]<average)

printf("这几个同学低于平均分的成绩为为:%f ",students[i]);

printf("平均成绩为:%.2f ",average);


return 0;

}

(10)从键盘输入10个学生的成绩扩展阅读:

int a[10]; 说明整型数组a,有10个元素。若要表示第10个元素,则使用a[9]。第一个则是a[0]。

float b[10],c[20]; 说明实型数组b,有10个元素,实型数组c,有20个元素。

char ch[20]; 说明字符数组ch,有20个元素。

特点:

1,数组是相同数据类型的元素的集合。

2,数组中的各元素的存储是有先后顺序的,它们在内存中按照这个先后顺序连续存放在一起。

3,数组元素用整个数组的名字和它自己在数组中的顺序位置来表示。例如,a[0]表示名字为a的数组中的第一个元素,a[1]代表数组a的第二个元素,以此类推。




热点内容
武汉大学学生会辅导员寄语 发布:2021-03-16 21:44:16 浏览:612
七年级学生作文辅导学案 发布:2021-03-16 21:42:09 浏览:1
不屑弟高考成绩 发布:2021-03-16 21:40:59 浏览:754
大学毕业证会有成绩单 发布:2021-03-16 21:40:07 浏览:756
2017信阳学院辅导员招聘名单 发布:2021-03-16 21:40:02 浏览:800
查询重庆2018中考成绩查询 发布:2021-03-16 21:39:58 浏览:21
结业考试成绩怎么查询 发布:2021-03-16 21:28:40 浏览:679
14中医医师资格笔试考试成绩查分 发布:2021-03-16 21:28:39 浏览:655
名著赏析课程标准 发布:2021-03-16 21:27:57 浏览:881
北京大学商业领袖高端培训课程 发布:2021-03-16 21:27:41 浏览:919