![](https://i-blog.csdnimg.cn/blog_migrate/11eba2d032fb7e7277afca2e6f131165.png)
题目
![](https://i-blog.csdnimg.cn/blog_migrate/c7ae2f139b086a9b8913af6c19599ff3.jpeg)
解决代码及点评
/************************************************************************/
/*
4. 编写一个程序,输入n个(少于10个)学生的姓名、性别、 成绩、出生年月日及入学年月日,
输出成绩在80分以上的学生的姓名、性别、成绩、出生和入学的年份。
5. 将上题改为“输出成绩在80分以上的18岁以下的女生的姓名、成绩、出生和入学的年份”,试编写程序实现之。
*/
/************************************************************************/
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include <string.h>
struct student
{
char name[10];
int sex;//1代表男生,0代表女生
int age;
float gread;
char bdate[10];
char idate[10];
};
void main()
{
struct student arr[2];
for (int i=0;i<2;i++) // 输入学生信息
{
//scanf_s("%d%s %c%d%f%f%f",&p->num,p->name,&p->sex,&p->age,&s0,&s1,&s2);
scanf_s("%s %d%d%f%s %s",arr[i].name,&arr[i].sex,&arr[i].age,&arr[i].gread,arr[i].bdate,arr[i].idate);
}
for (int i=0;i<2;i++) // 修改条件,输出大于80分,年纪超过18岁的女生成绩
{
if (arr[i].gread>80 && arr[i].sex==0 && arr[i].age<18)
{
printf("%s %d %d %.2f %s %s",arr[i].name,arr[i].sex,arr[i].age,arr[i].gread,arr[i].bdate,arr[i].idate);
}
}
system("pause");
}
代码编译以及运行
由于资源上传太多,资源频道经常被锁定无法上传资源,同学们可以打开VS2013自己创建工程,步骤如下:
1)新建工程
2)选择工程
3)创建完工程如下图:
4)增加文件,右键点击项目
5)在弹出菜单里做以下选择
6)添加文件
7)拷贝代码与运行
程序运行结果