完成对一个顺序表的建立,表中的每个元素是同学们的学号、姓名和三门课程的成绩,输入5个同学的信息,然后显示在屏幕上。(要求利用顺序表的基本操作)
输入格式:
首先收入学生人数5,然后依次输入5个学生的学号、姓名和三门课的成绩
输出格式:
输入5个学生的学号、姓名和三门课的成绩
输入样例:
5 01 张三 89 89 89 02 李四 90 90 90 03 王五 89 89 89 04 钱六 97 97 97 05 赵倩 90 90 90
输出样例:
1 张三 89.0 89.0 89.0
2 李四 90.0 90.0 90.0
3 王五 89.0 89.0 89.0
4 钱六 97.0 97.0 97.0
5 赵倩 90.0 90.0 90.0
首先要学习的是,cin输入字符串,cin会过滤掉不可见的字符如空格、回车等,所以可以用空格、会车作为两个字符串之间的分割符,用>>还能将输入的内容连接起来,一块输入。
cout是c++中的输出字符串的方法,可以用<<将几个字符串拼接起来,也可以连接字符串和空格。如:
cin>>a>>b>>c;//输入的是a b c,这可能是三个不同的变量
cout<<a<<b<<c;输出的是abc拼接后的字符串
答案如下:
#include<iostream>
#define MAXSIZE 100;
using namespace std;
int main(){
typedef struct{
int no;
char name[100];
double score1,score2,score3;
}SqList;
SqList student[5];
int n;
cin>>n;
for(int i=0;i<n;i++){
scanf("%d",&student[i].no);
cin>>student[i].name;
scanf("%lf %lf %lf",&student[i].score1,&student[i].score2,&student[i].score3);
}
for(int i=0;i<n;i++){
printf("%d ",student[i].no);
cout<<student[i].name<<" ";
printf("%.1lf %.1lf %.1lf\n",student[i].score1,student[i].score2,student[i].score3);
}
}