sinat_34316634 2016-03-16 11:57 采纳率: 0%
浏览 2925

用C语言编写学生信息录入系统,没有输入完毕直接跳出是什么原因

#include /*标准输入/输出函数库*/
#include /*标准函数库*/
#include /*字符串函数库*/
//学生信息数据类型定义
typedef struct student
{
char name[20]; /*姓名*/
int num[10]; /*学号*/
char sex[10]; /*性别*/
float chinese[10]; /*语文成绩*/
float math[10]; /*数学成绩*/
float english[10]; /*英语成绩*/
float computer[10]; /*计算机成绩*/
struct student next;
}stu;
//主要处理函数定义;
stu *head=NULL;
stu *plaststu=NULL;
void print_menu_main();
void input_record() /
成绩录入子函数*/
{char a;
do
{
stu pnewstu=(stu)malloc(sizeof(stu));
system("cls");
printf(">请输入学生姓名(注:最大长度为十个字符):\n");
printf("姓名:");
scanf("%s",pnewstu->name);
printf("学号:");
scanf("%d",pnewstu->num);
printf("性别:");
scanf("%s",pnewstu->sex);
printf("语文成绩:");
scanf("%3.0f",pnewstu->chinese);
printf("数学成绩:");
scanf("%3.0f",pnewstu->math);
printf("英语成绩:");
scanf("%3.0f",pnewstu->english);
printf("计算机成绩:");
scanf("%3.0f",pnewstu->computer);
if(head==NULL)
{
plaststu=pnewstu;
head=pnewstu;
}
else
{
pnewstu->next=pnewstu;
plaststu=pnewstu;
}
printf("继续输入吗?");
scanf("%c",&a);
}
while(a=='Y');
print_menu_main();
}
void show_record() {
int key_b_in;
printf("欢迎进入成绩显示功能:");
scanf("%d",&key_b_in);
if(key_b_in==2) {system("cls");
print_menu_main();
} } /*成绩显示子函数*/
void search_record() {
int key_b_in;
printf("请问你要查询哪些信息呢:");
scanf("%d",&key_b_in);
if(key_b_in==3) {system("cls");
print_menu_main();
} } /*成绩查询子函数*/
void update_record() {
int key_b_in;
printf("请问你要更新哪些信息呢:");
scanf("%d",&key_b_in);
if(key_b_in==4) {system("cls");
print_menu_main();
} } /*成绩更新子函数*/
void delete_record() {
int key_b_in;
printf("请问你要删除哪些信息呢:");
scanf("%d",&key_b_in);
if(key_b_in==5) {system("cls");
print_menu_main();
} } /*成绩删除子函数*/
void calculate_record() {
int key_b_in;
printf("请问你要如何计算成绩呢:");
scanf("%d",&key_b_in);
if(key_b_in==6) {system("cls");
print_menu_main();
} } /*成绩计算子函数*/
void save_record() {
int key_b_in;
printf("请问你要保存哪些信息呢:");
scanf("%d",&key_b_in);
if(key_b_in==7) {system("cls");
print_menu_main();
} } /*成绩保存子函数*/
void exit_system () { exit(0);} /*退出系统子函数*/
//显示主菜单界面函数定义
void print_menu_main()
{
int key_b_in;
printf("======================================================================\n");
printf("|学生成绩管理系统\n");
printf("======================================================================\n");
printf("|\n");
printf("| 1 输入学生信息\n");
printf("| 2 显示学生信息\n");
printf("| 3 查询学生信息\n");
printf("| 4 更新学生信息\n");
printf("| 5 删除学生信息\n");
printf("| 6 计算学生成绩\n");
printf("| 7 保存文件\n");
printf("| 8 退出系统\n");
printf("|\n");
printf("======================================================================\n");
printf(">请选择:");
scanf("%d",&key_b_in);
switch(key_b_in)
{
case 1:input_record();break;
case 2:show_record();break;
case 3:search_record();break;
case 4:update_record();break;
case 5:delete_record();break;
case 6:calculate_record();break;
case 7:save_record();break;
case 8:exit_system();break;
default:printf("输入错误,请重输入!(注意:输入有效范围为1-8)\n");
}

}
//主函数
main()
{
print_menu_main();
}

  • 写回答

3条回答 默认 最新

  • cp887563 2016-03-16 12:20
    关注

    应该是出现错误了,重新试试看?

    评论

报告相同问题?

悬赏问题

  • ¥15 drone 推送镜像时候 purge: true 推送完毕后没有删除对应的镜像,手动拷贝到服务器执行结果正确在样才能让指令自动执行成功删除对应镜像,如何解决?
  • ¥15 求daily translation(DT)偏差订正方法的代码
  • ¥15 js调用html页面需要隐藏某个按钮
  • ¥15 ads仿真结果在圆图上是怎么读数的
  • ¥20 Cotex M3的调试和程序执行方式是什么样的?
  • ¥20 java项目连接sqlserver时报ssl相关错误
  • ¥15 一道python难题3
  • ¥15 牛顿斯科特系数表表示
  • ¥15 arduino 步进电机
  • ¥20 程序进入HardFault_Handler