C++:输入10个学生的姓名、学号和成绩,将其中不及格者的姓名、学号和成绩输出。 用C语言,输入10个学生的姓名、学号和成绩,将其中不及格者的...

作者&投稿:唐超 (若有异议请与网页底部的电邮联系)
【解题思路】
本题用类数组很好解决。可以先声明一个具有姓名、学号、成绩3个数据成员的类,然后输出、输入可以写成类里的成员函数。完成了类声明之后,用这个类定义一个含有10个元素的数组,这样就可以很方便的实现输入学生信息、存储学生信息,再根据需要输出学生信息的功能。而且这样程序看起来也会相当简洁。具体代码如下:
 
【程序代码】
#include <iostream>            //控制台操作头文件
#include <string.h>            //字符串操作头文件
 
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<iostream>
using namespace std;
struct student //定义结构体,储存学生全部信息
{
char name[20];
int number;
int grade;
}stu[10]; //声明10个学生结构
int main()
{
int i,j=0,a[10]; //数组a[10]用来记录不及格学生在结构数组中的位置
for(i=0;i<10;i++)
{
a[i]=11; //将a[10]全部赋值11,以便后面进行比较
cout<<"输入第"<<i+1<<"个学生的姓名,学号和成绩:";
cin>>stu[i].name>>stu[i].number>>stu[i].grade;
if(stu[i].grade<60)
{
a[j++]=i; //将不及格学生在数组中的位置记录到a[10]中
}
}
if(a[0]==11) //进行不及格判定
{
cout<<"没学生不及格";
}
else
{
cout<<"不及格学生信息:"<<endl;
for(i=0;a[i]!=11;i++)
{
student temp=stu[a[i]];
cout<<temp.name<<" "<<temp.number<<" "<<temp.grade<<endl;
}
}
}
程序运行示例:

#include<stdio.h>typedef struct Stu
{
char name[40];
int stu_number;
int grate;
}Stu;int main()
{
int i;
Stu student[10]={0};
for( i = 0; i < 10; i ++ )
{
scanf("%s %d %d",student[i].name,&student[i].stu_number,&student[i].grate);
}
for(i=0;i<10;i++)
{
if(student[i].grate<60)
{
printf("name=%s,stu_number=%d,grete=%d\n",student[i].name,student[i].stu_number,student[i].grate);
}
}
return 0;
}测试通过

#include<iostream>
using namespace std;struct Stu
{
string name;
int stu_number;
int grate;
}student[100];
int main()
{
int i = 0;
for( i = 0; i < 10; i ++ )
cin >> student[i].name >> student[i].stu_number >> student[i].grate;
for( i = 0; i < 10; i ++ )
if(student[i].grate < 60)
cout << student[i].name << " "
<< student[i].stu_number << " "
<< student[i].grate << endl;
return 0;
}

用C++编写一个程序 : 输入10个学生的姓名、学号和成绩,将其中不及格的姓名、学号和成绩输出~

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

3:输入10个学生的姓名学号成绩,统计不及格的人数,并将不及格的人数输出...
答:学号和成绩。然后,我们定义了一个包含10个Student结构体的数组students。接着,我们使用for循环依次输入每个学生的姓名、学号和成绩,并将它们存储在相应的结构体中。然后,我们使用另一个for循环统计不及格的人数。如果某个学生的成绩小于60分,则将不及格的人数加1。最后,我们输出不及格的人数。

c++输入10个学生的学号、姓名和成绩,计算并输出他们的平均成绩,并且将...
答:for (i = 0; i < 10; ++i)if (ave > stu[i].value)printf("姓名:%s 学号:%s 成绩:%.2f\n", stu[i].name, stu[i].num, stu[i].value);} int main(void){ STUDENT stu[10];int i;float _ave = 0.0;for (i = 0; i < 10; ++i){ printf("输入第%d个学...

...姓名、3门课程的成绩,从键盘输入10个学生的数据,要求输出学生3门课...
答:include "stdio.h"include <stdlib.h> define SIZE 10 struct student{ char id[20];char name[20];int score[3];float average;} stud[SIZE];void input() /* 输入学生的信息 */ { int i;for(i=0;i<SIZE;i++){ printf("第%d个学生的信息:\n",i+1);scanf("%s%s%d...

C语言 从键盘输入10个学生信息(学号,姓名,年龄,性别)
答:include<stdio.h> void main(){ struct { char name[10];int num;char sex[2];int age;}s[10];int i;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...

编一程序,输入10个学生的学号,姓名,总分,然后按总分排序后给出_百度知...
答:include <stdio.h> define N 200 define SCORES 5 define NUMLEN 10 struct std_type{ char no[NUMLEN];/*学号*/ char *name;/*名字字符串指针*/ int scores[SCORES];/*五门功课的成绩*/ };struct std_type students[N];int order[N];int total[N];/*[函数]输入一个学生信息函数*/ ...

...编写一个程序,输入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...

...姓名、三门课的成绩,从键盘输入10个学生数据,要求打印出3门课的总...
答:include "stdio.h"include <stdlib.h> define SIZE 10 struct student{ char id[20];char name[20];int score[3];int total;} stud[SIZE];void main(){ int i,j;struct student temp;for(i=0;i<SIZE;i++){ printf("第%d个学生的信息:\n",i+1);scanf("%s%s%d%d%d",...

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

求大侠用c++编写一个程序,要求输入十个学生的姓名,学号和成绩,并输出...
答://用结构体做 include <iostream> using namespace std;include <string> struct Student{ string name;int ID;int score;}stu[10];int main(){ int n = 10;int i;for(i = 0; i < n; ++i){ cout<<"输入第"<<i+1<<"位同学的名字:\n";cin>>stu[i].name;cout<<"学号:";...

编写程序,输入10个学生的学号,姓名和考试成绩,输出最高分和最低分的学...
答:代码可以直接复制出来测试(linux系统)include<stdio.h> include<sting.h> struct student{ int ID;//学号 char Name[50];//姓名 int Grade;//成绩 };void main(){ struct student stu[100];int i = 0;int n,m;int big;int small;while(1){ printf("请输入学生的姓名、学号、成绩以...