再也回不到从前 2017-06-16 09:01 采纳率: 50%
浏览 780
已采纳

C语言新手求助,程序最后出现问题,求解答

/*学生信息查找程序*/

#include
#include

int main()
{
int i,j=0,num,flag=0;
int stdnum[2];
char bir[2];
char name[2];
char major[2];

for(i=0;i<2;i++)
{
printf("请输入学生%d的信息\n",i+1);
printf("姓名:");
scanf("%s",&name[i]);
printf("出生日期:");
scanf("%s",&bir[i]);
printf("学号:");
scanf("%d",&stdnum[i]);
printf("专业:");
scanf("%s",&major[i]);
}
printf("请输入要查找的学生的学号:");
do
{

scanf("%d",&num);
while(j<2)

{
if(num==stdnum[j])
flag=1;
if(flag)
{
printf("\n姓名:%s",name[j]);
printf("\n出生日期:%s",bir[j]);
printf("\n专业:%s",major[j]);
}
j++;
}
if(!flag) printf("学号不存在!请重新输入!");
}while(flag==0);
system("PAUSE");
return 0;
}

  • 写回答

2条回答 默认 最新

  • qian337816953 2017-06-17 08:57
    关注

    你数组用得不对。char name[2];保存的是两个字符的长度,实际就一个字符加一个‘\0’,你应该在前面加个指针

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥20 verilog状态机方法流水灯
  • ¥15 pandas代码实现不了意图
  • ¥15 GD32H7 从存储器到外设SPI传输数据无法重复启用DMA
  • ¥25 LT码在高斯信道下的误码率仿真
  • ¥45 渲染完成之后将物体的材质贴图改变,自动化进行这个操作
  • ¥15 yolov5目标检测并显示目标出现的时间或视频帧
  • ¥15 电视版的优酷可以设置电影连续播放吗?
  • ¥50 复现论文;matlab代码编写
  • ¥30 echarts 3d地图怎么实现一进来页面散点数据和卡片一起轮播
  • ¥15 数字图像的降噪滤波增强