技术小白奋斗中 2015-08-17 12:28 采纳率: 0%
浏览 1404

c语言指针问题,求大神,新手。

#include
#include
#include

struct Student
{
int age;
char name[100];
float score;
};

void Ininformation(int * IP_len, struct Student * IP_arr)
{
int i;

for (i = 0; i < *IP_len; ++i)
{
printf("请输入%d个学生信息: \n", *IP_len);
printf("请输入第%d个学生信息\n", i + 1);
printf("年龄 = ");
scanf_s("%d", &IP_arr[i].age);

printf("分数 = ");
scanf_s("%f", &IP_arr[i].score);

printf("姓名 = ");
scanf_s("%s", IP_arr[i].name);

}
}

void Sortinformation(int * SP_len, struct Student * SP_arr)
{
int i, j;
struct Student t;

for (i = 0; i < *SP_len; ++i)
{
for (j = 0; j {
if (SP_arr[j].score > SP_arr[j + 1].score)
{
t = SP_arr[j];
SP_arr[j] = SP_arr[j + 1];
SP_arr[j + 1] = t;
}
}
}
}

void Outinformation(int * OP_len, struct Student * OP_arr)
{
int i;

for (i = 0; i < *OP_len; ++i)
{
printf("第%d个学生的信息是:\n", i + 1);
printf("年龄 = %d\n", OP_arr[i].age);
printf("姓名 = %s\n", OP_arr[i].name);
printf("分数 = %f\n", OP_arr[i].score);
printf("\n\n");
}
}

int main(void)
{
int len;
struct Student * p_arr;

printf("请输入总共有几个学生:\n");
printf("人数 = ");
scanf_s("%d", &len);

p_arr = (struct Student *)malloc(len * sizeof(struct Student));

Ininformation(&len, p_arr);
Sortinformation(&len, p_arr);
Outinformation(&len, p_arr);

system("pause");
return 0;
}
存在错误,但是编译可以通过,求大神帮看下,谢谢。图片说明

  • 写回答

3条回答 默认 最新

  • 纵横车 2015-08-17 12:42
    关注

    for循环代码补全,求补上。

    评论

报告相同问题?

悬赏问题

  • ¥15 回答4f系统的像差计算
  • ¥15 java如何提取出pdf里的文字?
  • ¥100 求三轴之间相互配合画圆以及直线的算法
  • ¥100 c语言,请帮蒟蒻写一个题的范例作参考
  • ¥15 名为“Product”的列已属于此 DataTable
  • ¥15 安卓adb backup备份应用数据失败
  • ¥15 eclipse运行项目时遇到的问题
  • ¥15 关于#c##的问题:最近需要用CAT工具Trados进行一些开发
  • ¥15 南大pa1 小游戏没有界面,并且报了如下错误,尝试过换显卡驱动,但是好像不行
  • ¥15 自己瞎改改,结果现在又运行不了了