用C语言,输入10个学生的姓名、学号和成绩,将其中不及格者的姓名、学号和成绩输出。(二维数组,不用指针

作者&投稿:雷钧 (若有异议请与网页底部的电邮联系)
C++:输入10个学生的姓名、学号和成绩,将其中不及格者的姓名、学号和成绩输出。~

【解题思路】本题用类数组很好解决。可以先声明一个具有姓名、学号、成绩3个数据成员的类,然后输出、输入可以写成类里的成员函数。完成了类声明之后,用这个类定义一个含有10个元素的数组,这样就可以很方便的实现输入学生信息、存储学生信息,再根据需要输出学生信息的功能。而且这样程序看起来也会相当简洁。具体代码如下: 【程序代码】#include //控制台操作头文件#include //字符串操作头文件 class Stu //定义学生类{private: //私有成员关键字 char Name[32]; //姓名 int ID; //学号 int Score; //成绩 public: //外部成员关键字 Stu(){strcpy(Name,"无"); //无参构造函数 ID=0;Score=0;} int Inp() //从键盘输入学生信息函数 {printf("请输入姓名:"); scanf("%s",Name); printf("请输入学号:"); scanf("%d",&ID); printf("请输入成绩:"); scanf("%d",&Score);} int Put() //学生信息输出函数 {printf("姓名:%s,学号:%d,成绩:%d
",Name,ID,Score);} int Get(){return Score;} //获取学生成绩的成员函数}; //类定义结束 int main() //主函数{Stu S[10]; //学生信息数组 int i; /循环变量 for(i=0;i<10;i++) //用一个循环输入10个学生信息 {printf("请输入第%d个学生信息
",i+1); S[i].Inp(); //调用成员函数输入学生信息 printf("
");} //换行 printf("
不及格的学生有:
"); for(i=0;i<10;i++) //用循环检测每个学生是否及格 if(S[i].Get()<60) S[i].Put();//输出不及格学生信息 printf("
"); //换行 system("PAUSE"); //屏幕暂停,以便看到显示结果 return 0;} //结束程序 【运行结果】以上程序在DEV C++中运行通过,运行结果截图如下:

楼主程序如下: #include
#define n 10 //定义长度 输入10个学员的信息
struct student
{
int num;//学号
char name[20];//姓名
float score;//成绩
}stt[n];
void main()
{
printf("学号姓名成绩
");
for(int i=0;i<n;i++)
{
scanf("%d %s %f",&stt[i].num ,stt[i].name ,&stt[i].score );
}
//用C++编写一个程序 : 输入10个学生的姓名、学号和成绩,将其中不及格的姓名、学号和成绩输出 printf("不及格学员的名单如下:
");
for(i=0;i<n;i++)
{
if(stt[i].score<60)
printf("%d%s%5.2f
",stt[i].num ,stt[i].name ,stt[i].score); }
if(stt[i].score >=60&&stt[i].score <100)
{
printf("没有不及格的学员:
");
}

} 如果你对我的回复感到满意,请你选择“采纳”和“五星”评价,这将鼓励我们更好的为其他网友解答,以上是“VCミ世界”为您解答

#include "stdio.h"
typedef struct student
{
char name[20];
int num;
int score;
}STU;

void main()
{
STU student[10];
int pass=60,j,i;
printf("输入学生的信息,每输入一个名字和学号之后按空格,输入一个成绩之后按回车:\n");
for(j=0;j<10;j++)
scanf("%s %d %d",&student[j].name,&student[j].num,&student[j].score);
printf(" name number score\n");
for(i=0;i<10;i++)
{
if(student[i].score<pass)
printf(" %-12s%4d%8d\n",student[i].name,student[i].num,student[i].score);
}
}
此程序我已经调试过了,没问题

#include "stdafx.h"
#include<stdio.h>
struct student
{
char name[20];
int num;
float grades;
}stu[10];

void main()
{
float jigexian=60.0;
int i;
printf("请输入十个学生的信息!\n\n");
for(i=0;i<10;i++)
{
printf("请输入学生的姓名:");
scanf("%s",stu[i].name);
printf("请输入学生的学号:");
scanf("%d",&stu[i].num);
printf("请输入学生的分数:");
scanf("%d",&stu[i].grades);
printf("\n");
}
printf("\n不及格的学生信息为:\n");
printf("姓名 学号 成绩\n");
for(i=0;i<10;i++)
{
if(stu[i].grades<jigexian)
{

printf("%s %d %d\n",stu[i].name,stu[i].num,stu[i].grades);
}
}
printf("\n\n");
}

可以用结构体吗?

用C语言,输入10个学生的姓名、学号和成绩,将其中不及格者的姓名、学号...
答:STU student[10];int pass=60,j,i;printf("输入学生的信息,每输入一个名字和学号之后按空格,输入一个成绩之后按回车:\n");for(j=0;j<10;j++)scanf("%s %d %d",&student[j].name,&student[j].num,&student[j].score);printf(" name number score\n");for(i=0;i<10;i++...

C语言从键盘输入10个学生姓名存入
答:int age;//年龄 }student[10];//printf("%d",sizeof(wchar_t));int i;for(i=0;i<10;i++){ printf("请输入第%d个学生的信息:名字,学号,性别和年龄:\n",i+1);scanf("%s%d%s%d",student[i].name,&student[i].num,student[i].sex,&student[i].age);} printf("十个学生的信...

C语言 编写一个程序,输入10位同学的姓名和成绩,并按学生成绩从高到低...
答:include<stdio.h>#include<string.h>#define N 10struct student{char name[20];int score;};void main(){struct student stu[N];struct student *p; int i,v,s,temp;char tempname1[20],tempname2[20];for(i=0;i<N;i++){printf("please input %d student name\n",i+1);scanf...

...姓名,3门课的成绩,从键盘输入10个学生数据,
答:float score[4];}person[10];int i;printf("请输入10名学生的学号、姓名、及三门成绩:");for(i=0;i<10;i++)scanf("%d,%s,%d,%d,%d",&person[i]->number,person[i]->name,&person->score[0],&person->score[1],&person->score[2]);for(i=0,i<10;i++)person->score[3]=...

C语言输入10个学生的姓名和学号 按照学号从小到大顺序排序 姓名随之...
答:include<stdio.h>#include<string.h>void sort(int a[], char b[][11])//a为数组地址{int i, j,v;char s[11];for(i = 0; i < 9; i ++)for(j = i+1; j<10; j ++){if(a[i] > a[j]){v = a[i];a[i] = a[j];a[j] = v;strcpy(s,b[i]);strcpy(b[i]...

C语言 从键盘输入10个学生信息(学号,姓名,年龄,性别)
答:for(i=0;i<10;i++){ printf("请依次输入学生的姓名,学号,性别,年龄等信息");scanf("%s%d%s%d",s[i].name,&s[i].num,s[i].sex,&s[i].age);} for(i=0;i<10;i++){ printf("姓名:%s\t学号:%d\t性别:%s\t年龄:%d\n",s[i].name,s[i].num,s[i].sex,s[i]....

C语言:输入10个姓并按字典序的升序排序
答:struct xing//用来存放姓的结构体 { char name[20];};void main(){ int i,j;char str[20];struct xing ren[10];//结构体数组,用来建立多少个人来存放的 for (i=0;i<10;i++){ printf ("请输入第 %d 姓: ",i+1);scanf ("%s",ren[i].name);} for (i=1;i<10;i++)for ...

用c语言的数组解。 4、输入10个学生的信息,每个学生含有成员名为“学号...
答:printf("请输入语文成绩\n");scanf("%d",&a[i].yuwen);printf("请输入数学成绩\n");scanf("%d",&a[i].shuxue);printf("请输入英语成绩\n");scanf("%d",&a[i].yingyu);a[i].total=a[i].shuxue+a[i].yingyu+a[i].yuwen;printf("第%d个学生的总成绩是%d\n",i+1,a[i]....

...分别用冒泡排序法和选择排序法对10个学生的姓名按升排序输出_百度知 ...
答:include<stdio.h>#include<string.h>char stu[10][20];void Bubble(void){ int i, j; for(i = 0; i < 10; i++) { for(j = 0; j + i < 9; j++) { if(strcmp(stu[j], stu[j + 1]) > 0) { char temp[20]; strcpy(temp, stu[j]); ...

c语言录入10个学生信息,包括学号姓名,5门课成绩,并要求录入学生各科成 ...
答:for(int i=0;i<10;i++){ printf("请第%d次输入学号,性别,名字,5科成绩\n",i+1);end=(N*)malloc(sizeof(N));scanf("%s%s%d%d%d",&end->num,&end->name,&end->score1,&end->score2,&end->score3,&end->score4,&end->score5);next->p=end;next=end;} end->p=NULL;...