1.按照商品价格降序输出商品信息
#include<iostream>
#include<algorithm>
#include<string>
using namespace std;
struct phone{
int id;
string name;
int price;
int num;
};
void arrsort(phone p[],int n) {
for (int i = 0; i < n; i++) {
for (int j = 0; j < n-i-1; j++) {
if (p[j + 1].price > p[j].price) {
swap(p[j + 1], p[j]);
}
}
}
}
void arrsort1(phone *p, int n) {
for (int i = 0; i < n; i++) {
for (int j = 0; j < n - i - 1; j++) {
if (p[j + 1].price > p[j].price) {
swap(p[j + 1], p[j]);
}
}
}
}
void print(phone p[], int n) {
for (int i = 0; i < n; i++) {
cout << p[i].id << p[i].name << " " << p[i].price <<" "<< p[i].num << endl;
}
}
void print1(phone *p, int n) {
for (int i = 0; i < n; i++) {
cout << p[i].id << p[i].name << " " << p[i].price <<" "<< p[i].num << endl;
}
}
int main() {
phone p[4] ={{1001,"vivox60",3799,80},{1002,"华为mate40",6499,100},{1003,"小米10S",3199,120},{1004,"苹果11",5299,90} };
arrsort1(p, 4);
print1(p, 4);
cout << "-----------"<<endl;
arrsort(p, 4);
print(p, 4);
}
2.编程实现以下功能:
(1)定义函数mySort,实现对接收过来的一组数据进行升序排序,参数使用数组
(2)定义函数myPrint, 实现对接收过来的一组数据进行输出,参数使用指针
(3)主函数中:
定义数组保存学生的成绩
输入学生人数n,
输入n个学生的成绩
调用函数mySort,实现对成绩升序排序
调用函数myPrint, 实现打印输出排序后的数琚
void mysort(int a[],int b) {
for (int i = 0; i < b; i++) {
for (int j = 0; j < b - i - 1; j++) {
if (a[j] > a[j + 1]) {
swap(a[j+1],a[j]);
}
}
}
}
void myprint(int a[], int b) {
for (int i = 0; i < b; i++) {
cout << a[i]<<" ";
}
}
void myprint1(int *a, int b) {
for (int i = 0; i < b; i++) {
cout << *(a+i) << " ";
}
}
int main() {
int n;
cout << "输入学生人数n";
cin >> n;
int score[50];
for (int i = 0; i < n; i++) {
cout << "请输入" << i + 1 << "个学生的成绩";
cin >> score[i];
}
mysort(score,n);
myprint1(score, n);
}
3.编程实现以下功能:
有三个学生组队参加某比赛,每个学生信息包含准考证号,姓名,个人成绩,另团队有一总成绩。
编写主程序模拟生成三个学生给其赋值、完成相关信息的输出。
定义学生类Student
私有数据成员:学生准考证号(exam_number),学生姓名(stu_name )
公有数据成员:团队成绩 (team_grade)
公有成员函数:ScanStuInfo函数实现功能为输入三个学生的姓名和准考证号,输入团队成绩
PrintStuInfo函数实现输出所有学生信息以及团队成绩
主函数中创建一个Student对象,分别调用两个成员函数,实现相应的效果
class student {
int exam_number[5];
string stu_name[5];
int stu_grade[5];
public:
int team_grade;
void ScanStuInfo() {
for (int i = 0; i < 3; i++) {
cout << "请输入准考证号:";
cin >> exam_number[i];
cout << "请输入学生姓名:";
cin >> stu_name[i];
}
cout << "请输入团队成绩";
cin >> team_grade;
}
void PrintStuInfo() {
for (int i = 0; i < 3; i++) {
cout << exam_number[i] <<" "<< stu_name[i] << endl;
}
cout << team_grade << endl;
}
};
int main() {
student s;
s.ScanStuInfo();
s.PrintStuInfo();
}