青春年少何惧山水迢迢 2015-12-11 08:54 采纳率: 100%
浏览 1483
已采纳

用注释替换源代码后,直接跳过从键盘输入sex的值,执行salary的输入,什么情况?不好编辑,有点难看,谅解

#include
#include
#include

struct worker_List
{
char name[20];
char sex[1];//char sex;
long salary;
};

int main()
{
int len = 0;
struct worker_List *str;
int i = 0;
char name[20];
printf ("please input the number of workers:");
scanf ("%d",&len);
str = (struct worker_List *)malloc(len * sizeof(struct worker_List));
for (i=0; i<len; i++)
{
printf("the %dth worker's information:\n",i+1);
printf("the name is:");
scanf("%s",str[i].name);
printf ("the sex is:");
scanf ("%s",str[i].sex);//此处写%c会直接跳过这个输入语句scanf ("%c",&str[i].sex);
printf ("the salary is: ");
scanf ("%d",&str[i].salary);

}
printf ("please input a name:");
scanf ("%s",name);

for (i=0; i<len; i++)
{
    if (strcmp(name,str[i].name))
    {
      printf ("the sex is %s\n",str[i].sex);// printf ("the sex is %c\n",str[i].sex);
      printf ("the salary is %d",str[i].salary);
    }
}
return 0;   

}

  • 写回答

5条回答 默认 最新

  • Troy_Achilles 2015-12-11 09:21
    关注

    用%c会把上次的回车键取走,所以就感觉跳过了,其实是已经执行过了(取走了回车键)

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

报告相同问题?

悬赏问题

  • ¥15 求差集那个函数有问题,有无佬可以解决
  • ¥15 【提问】基于Invest的水源涵养
  • ¥20 微信网友居然可以通过vx号找到我绑的手机号
  • ¥15 寻一个支付宝扫码远程授权登录的软件助手app
  • ¥15 解riccati方程组
  • ¥15 display:none;样式在嵌套结构中的已设置了display样式的元素上不起作用?
  • ¥15 使用rabbitMQ 消息队列作为url源进行多线程爬取时,总有几个url没有处理的问题。
  • ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
  • ¥50 树莓派安卓APK系统签名
  • ¥65 汇编语言除法溢出问题