签到

05月05日
尚未签到

共有回帖数 0

    天河一号

    等级:
    请教各位编程人士,本人使用VC++6.0在Win7下编译运行出现以下情况:


    源代码如下:
    ----------------------------------------------------------------------------------------------------------------
    # include stdio.h
    # include malloc.h


    struct Student
    {
    int age;
    char name;
    float score;
    };


    int main(void)
    {

    int len;
    struct Student * pArr;
    int i, j;
    struct Student t;

    printf("请输入学生的个数:n");
    printf("len = ");
    scanf("%d", &len);

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



    //输入
    for (i=0; ilen; ++i)
    {
    printf("请输入第%d个学生的信息:", i+1);


    printf("请输入学生的年龄:n");
    printf("age = ");
    scanf("%d", &pArr.age);


    printf("请输入学生的姓名:n");
    printf("name = ");
    scanf("%s", pArr.name); //name是数组名,本身就已经是数组元素的地址 所以 pArr.name 不能改成 &pArr.name


    printf("请输入学生的分数:n");
    printf("score = ");
    scanf("%f", &pArr.score);
    }


    for (i=0; ilen-1; ++i)
    {
    for (j=0; jlen-1-i; ++i)
    {
    if (pArr[j].score  pArr[j+1].score)
    {
    t = pArr[j];
    pArr[j] = pArr[j+1];
    pArr[j+1] = t;
    }
    }
    }


    printf("--------------------------------------------");
    //输出
    for (i=0; ilen; ++i)
    {
    printf("第%d个学生的信息是:n", i+1);


    printf("age = %dn", pArr.age);
    printf("name = %sn", pArr.name);
    printf("score = %fn", pArr.score);


    printf("n");
    }


    return 0;
    }
    ----------------------------------------------------------------------------------------------------------------


    在VC++6.0编译下无 错误 警告


    本人也在网上搜寻过 解决方法,


    1. 右键exe文件---属性



    2. 使用C-Free 5 运行该文件


    以上两种方法均无效果,以本人阅历只能推断出WIN7系统不兼容该文件


    请教各位使用Win7 编程高人,能为本人提出解决办法!! 为此深表感谢!!

    楼主 2015-06-04 08:35 回复

共有回帖数 0
  • 回 帖
  • 表情 图片 视频
  • 发表

登录直线网账号

Copyright © 2010~2015 直线网 版权所有,All Rights Reserved.沪ICP备10039589号 意见反馈 | 关于直线 | 版权声明 | 会员须知