#include #include void inputstudent(struct studentp); void outstudent(struct studentp); struct student { char name[100]; float score; char sex; }; void main() { int len; printf("请输入共有多少学生"); scanf_s("%d", &len); struct student st; inputstudent(&st,len); outstudent(&st,len); } void inputstudent(struct student p,int len) { int i; p = (struct student)malloc(len * sizeof(struct student)); for (i = 0; i < len; i++) { printf("请输入%d学生信息\n",i+1); printf("请输入第%d学生的姓名\n",i+1); scanf_s("%s",p[i].name,100); printf("请输入第%d学生的成绩\n",i+1); scanf_s("%f", &p[i].score); printf("请输入第%d学生的性别\n",i+1); scanf_s("%c/n", &p[i].sex,1); //getchar(p[i].sex); } free(p); } void outstudent(struct student *p,int j) { int i; for (i = 0; i < j; i++) { printf("第%d学生信息", i + 1); printf("第%d学生的姓名;%s\n",*p->name); printf("第%d学生的成绩;%f\n", *p->score); printf("第%d学生的性别;%c\n", *p->sex); } }
3条回答 默认 最新
关注 修改了一下,现在这个代码是没问题的。如果你有看不懂的地方可以继续问~
#include <stdio.h> //#include<malloc.h> #include <stdlib.h> struct student { char name[20]; float score; char sex[5]; }; void inputstudent(struct student* pc, int len) { int i; //换个指针变量名pc //函数里面创建的动态内存空间无法给main函数里面的p用 //pc = (struct student*)malloc(len * sizeof(struct student)); for (i = 0; i <len; i++) { printf("请输入%d学生信息\n", i+1 ); printf("请输入第%d学生的姓名>", i + 1); scanf("%s", pc[i].name); printf("请输入第%d学生的成绩>", i + 1); scanf("%f", &pc[i].score); printf("请输入第%d学生的性别>", i + 1); scanf("%s", pc[i].sex); //getchar(p[i].sex); } printf("输入完成\n"); } void outstudent(struct student* p, int len) { int i; for (i = 0; i < len; i++) { printf("第%d学生信息\n", i + 1); printf("第%d学生的姓名:%s\n", i + 1, p[i].name); printf("第%d学生的成绩:%.2f\n", i + 1, p[i].score); printf("第%d学生的性别:%s\n", i + 1, p[i].sex); } free(p); } int main() { int len; printf("请输入共有多少学生>"); scanf("%d", &len); struct student st; struct student* p = &st; p = (struct student*)malloc(len * sizeof(struct student)); inputstudent(p, len); outstudent(p, len); return 0; }
点个采纳呗~
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 1无用
悬赏问题
- ¥15 拟通过pc下指令到安卓系统,如果追求响应速度,尽可能无延迟,是不是用安卓模拟器会优于实体的安卓手机?如果是,可以快多少毫秒?
- ¥20 神经网络Sequential name=sequential, built=False
- ¥16 Qphython 用xlrd读取excel报错
- ¥15 单片机学习顺序问题!!
- ¥15 ikuai客户端多拨vpn,重启总是有个别重拨不上
- ¥20 关于#anlogic#sdram#的问题,如何解决?(关键词-performance)
- ¥15 相敏解调 matlab
- ¥15 求lingo代码和思路
- ¥15 公交车和无人机协同运输
- ¥15 stm32代码移植没反应