输出学生信息

输出学生信息

时间: 1ms        内存:128M

描述:

将输入的学生信息按照要求重新输出。

输入:

第一行是整数t,表明数据组数
在每组数据中,
第一行先是整数n(n<100),表示有n个学生。
接下来有n行,每行表示一个学生。先是一个无空格的字符串,表示姓名,然后是一个非负整数,表示学号。
姓名长度不超过100字符,学号小于1000。

输出:

按照输入的顺序,输出每个学生的信息。先输出学号,再输出姓名,中间用单个空格隔开。
一组数据处理完后,要输出一行 "****"。

示例输入:

2
3
Tom 12
Jack 20
Marry 89
2
Jade 78
White 76

示例输出:

12 Tom
20 Jack
89 Marry
****
78 Jade
76 White
****

提示:

参考答案(内存最优[1096]):

#include <stdio.h>
int  main()
{
    int n,a,m;
    char c[99];
    scanf("%d",&n);
    while(n--)
    {
        scanf("%d",&m);
        while(m--)
        {
            scanf("%s %d",c,&a);
            printf("%d %s\n",a,c);
        }printf("****\n");
    }
    return 0;
}

参考答案(时间最优[0]):

#include <iostream>
#include <cstring>
using namespace std;
class Student{
public:
	   Student(char a[],int nu)
	   {
		   strcpy(name,a);
		   num=nu;
	   }
	   Student(){}
       void Read();
	   void Print();
private:
      int num;
	  char name[101];
};
void Student::Read()
{
	cin>>name>>num;
}
void Student::Print()
{
	cout<<num<<' '<<name<<endl;
}
int main()
{
	int t;
	cin >> t;
	Student s("Tom",12);
	while( t-- )	{
		int n;
		cin >> n;
		Student st;
		for( int i = 0;i < n; ++i) {
			st.Read();
			st.Print();
		}
		cout << "****" << endl;
	}
	return 0;
}

题目和答案均来自于互联网,仅供参考,如有问题请联系管理员修改或删除。

点赞

发表评论

电子邮件地址不会被公开。必填项已用 * 标注