/* Note:Your choice is C IDE */#include "stdio.h"void main(){ int i; struct student{ char num[22]; char name[33]; char sex; int age; }; struct student stu[3]; for(i=0;i<2;i++) { printf("请输入第%d个学生的信息:\n",i+1); printf("number:"); scanf("%s",stu[i].num); printf("name:"); scanf("%s",stu[i].name); printf("sex:"); scanf("%c",&stu[i].sex); printf("\nage:"); scanf("%d",&stu[i].age); } printf("number name sex age \n"); for(i=0;i<2;i++) { printf("%-8s%-8s %-8c %-8d\n",stu[i].num,stu[i].name, stu[i].sex,stu[i].age); } }
3 回答
Xyino_Snake
TA贡献31条经验 获得超22个赞
类定义直接写在main函数里面吗?最好写外面。
性别输入单字符,显然不能输入汉字。
标准IO还要考虑回车符。
如果是我,我会使用 宽字符串+宽字符 支持汉字。
但是C语言函数会将宽转化为窄。因此又要搭配winAPI。
说实话直到目前为止,我自己都还没有贯彻这些正确主张。但下一步我将会这样做。
另外,我用的是C++。
望远
TA贡献1017条经验 获得超1032个赞
printf("请输入第%d个学生的信息:\n",i+1); printf("number:"); gets(stu[i].num); printf("name:"); gets(stu[i].name); printf("sex:"); scanf("%c",&stu[i].sex); printf("\nage:"); scanf("%d",&stu[i].age);
选择用gets()输入的时候会自动处理掉后面结尾处的回车,并且可以带有空格。
- 3 回答
- 0 关注
- 1278 浏览
添加回答
举报
0/150
提交
取消