一道C语言题,请大侠帮忙。

2024-12-29 05:30:32
推荐回答(6个)
回答1:

你的程序最后那个地方while(m=="y");这个地方出错了,字符型的数据应该用单引号,这个是正确的:
#include"stdio.h"
int main()
{
char Type;
char m;
do
{
printf("**********欢迎光临*******************\n");
printf(" 学生信息管理系统 \n");
printf("1、插入学生信息!\n");
printf("2、修改学生信息!\n");
printf("3、删除学生信息!\n");
printf("4、从文件批量导入学生信息!\n");
printf("5、保存学生信息!\n");
printf("0、退出!\n");
printf("*************************************\n");
printf("请输入相应的数据:\n");
scanf("%c",&Type);
switch(Type)
{
case'1':
printf("您选择的是:插入学生信息!\n");
break;
case'2':
printf("您选择的是:修改学生信息!\n");
// printf("是否继续(Y/N)?”\n");
// scanf("%c",&m);
break;
case'3':
printf("您选择的是:删除学生信息!\n");
// printf("是否继续(Y/N)?”\n");
// scanf("%c",&m);
break;
case'4':
printf("您选择的是:从文件批量导入学生信息!\n");
//printf("是否继续(Y/N)?”\n");
// scanf("%c",&m);
break;
case'5':
printf("您选择的是:保存学生信息!\n");
// printf("是否继续(Y/N)?”\n");
//scanf("%c",&m);
break;
case'0':
printf("您选择的是:退出!\n");
//
break;
default:
printf("输入错误\n");
}
printf("是否继续(y/n)?”\n");
scanf("%c",&m);
}while(m=='y');

return 0;
}
不过看这个好像仅仅是输出哥界面而没有什么含义,这样就需要你多敲几行代码喽……嘿嘿……

回答2:

#include"stdio.h"
int main()
{
char Type;
char m;
do
{
printf("**********欢迎光临*******************\n");
printf(" 学生信息管理系统 \n");
printf("1、插入学生信息!\n");
printf("2、修改学生信息!\n");
printf("3、删除学生信息!\n");
printf("4、从文件批量导入学生信息!\n");
printf("5、保存学生信息!\n");
printf("0、退出!\n");
printf("*************************************\n");
printf("请输入相应的数据1:\n");

//fflush(stdin);//fflush()只在vc下工作 有局限性
while((Type=getchar())=='\n'&&Type!=EOF);//清空缓冲区
//scanf("%c",&Type);

switch(Type)
{
case'1':
printf("您选择的是:插入学生信息!\n");
break;
case'2':
printf("您选择的是:修改学生信息!\n");
// printf("是否继续(Y/N)?”\n");
// scanf("%c",&m);
break;
case'3':
printf("您选择的是:删除学生信息!\n");
// printf("是否继续(Y/N)?”\n");
// scanf("%c",&m);
break;
case'4':
printf("您选择的是:从文件批量导入学生信息!\n");
//printf("是否继续(Y/N)?”\n");
// scanf("%c",&m);
break;
case'5':
printf("您选择的是:保存学生信息!\n");
// printf("是否继续(Y/N)?”\n");
//scanf("%c",&m);
break;
case'0':
printf("您选择的是:退出!\n");
//
break;
default:
printf("9输入错误\n");
}

printf("是否继续(y/n)?\n");
//fflush(stdin);
while((m=getchar())=='\n'&&m!=EOF);//清空缓冲区
//scanf("%c",&m);
}while(m=='y');//字符单引号

return 0;
}

1. 字符用单引号
2. 清空缓冲区: 用while((m=getchar())=='\n'&&m!=EOF);
3. 其它正确。楼上有两个人的也写对了,但可能只能在vc下工作。

回答3:

#include"stdio.h"
int main()
{
char Type;
char m;
do
{
printf("**********欢迎光临*******************\n");
printf(" 学生信息管理系统 \n");
printf("1、插入学生信息!\n");
printf("2、修改学生信息!\n");
printf("3、删除学生信息!\n");
printf("4、从文件批量导入学生信息!\n");
printf("5、保存学生信息!\n");
printf("0、退出!\n");
printf("*************************************\n");
printf("请输入相应的数据:\n");
scanf("%s",&Type);
switch(Type)
{
case'1':
printf("您选择的是:插入学生信息!\n");
break;
case'2':
printf("您选择的是:修改学生信息!\n");
// printf("是否继续(Y/N)?”\n");
// scanf("%c",&m);
break;
case'3':
printf("您选择的是:删除学生信息!\n");
// printf("是否继续(Y/N)?”\n");
// scanf("%c",&m);
break;
case'4':
printf("您选择的是:从文件批量导入学生信息!\n");
//printf("是否继续(Y/N)?”\n");
// scanf("%c",&m);
break;
case'5':
printf("您选择的是:保存学生信息!\n");
// printf("是否继续(Y/N)?”\n");
//scanf("%c",&m);
break;
case'0':
printf("您选择的是:退出!\n");
//
break;
default:
printf("输入错误\n");
}
printf("是否继续(y/n)?\n");
scanf("%s",&m);
}while(m=='y');

return 0;
}
差不多了 主要就是字符串的更改和m=='y'这里的修改

回答4:

#include"stdio.h"
int main()
{
char Type;
char m;
do
{
printf("**********欢迎光临*******************\n");
printf(" 学生信息管理系统 \n");
printf("1、插入学生信息!\n");
printf("2、修改学生信息!\n");
printf("3、删除学生信息!\n");
printf("4、从文件批量导入学生信息!\n");
printf("5、保存学生信息!\n");
printf("0、退出!\n");
printf("*************************************\n");
printf("请输入相应的数据:\n");
scanf("%c",&Type);
switch(Type)
{
case'1':
printf("您选择的是:插入学生信息!\n");
break;
case'2':
printf("您选择的是:修改学生信息!\n");
// printf("是否继续(Y/N)?”\n");
// scanf("%c",&m);
break;
case'3':
printf("您选择的是:删除学生信息!\n");
// printf("是否继续(Y/N)?”\n");
// scanf("%c",&m);
break;
case'4':
printf("您选择的是:从文件批量导入学生信息!\n");
//printf("是否继续(Y/N)?”\n");
// scanf("%c",&m);
break;
case'5':
printf("您选择的是:保存学生信息!\n");
// printf("是否继续(Y/N)?”\n");
//scanf("%c",&m);
break;
case'0':
printf("您选择的是:退出!\n");
//
break;
default:
printf("输入错误\n");
}
fflush(stdin);
printf("是否继续(y/n)?”\n");
scanf("%c",&m);
fflush(stdin);
}while(m=='y');

return 0;
}

回答5:

#include"stdio.h"
#include "stdafx.h"
#include "windows.h"

int main()
{
char Type;
char m;
do
{
printf("**********欢迎光临*******************\n");
printf(" 学生信息管理系统 \n");
printf("1、插入学生信息!\n");
printf("2、修改学生信息!\n");
printf("3、删除学生信息!\n");
printf("4、从文件批量导入学生信息!\n");
printf("5、保存学生信息!\n");
printf("0、退出!\n");
printf("*************************************\n");
printf("请输入相应的数据:\n");
fflush(stdin);
scanf("%c",&Type);
switch(Type)
{
case'1':
printf("您选择的是:插入学生信息!\n");
break;
case'2':
printf("您选择的是:修改学生信息!\n");
// printf("是否继续(Y/N)?”\n");
// scanf("%c",&m);
break;
case'3':
printf("您选择的是:删除学生信息!\n");
// printf("是否继续(Y/N)?”\n");
// scanf("%c",&m);
break;
case'4':
printf("您选择的是:从文件批量导入学生信息!\n");
//printf("是否继续(Y/N)?”\n");
// scanf("%c",&m);
break;
case'5':
printf("您选择的是:保存学生信息!\n");
// printf("是否继续(Y/N)?”\n");
//scanf("%c",&m);
break;
case'0':
printf("您选择的是:退出!\n");
//
break;
default:
printf("输入错误\n");
}
printf("是否继续(y/n)?”\n");
fflush(stdin);
scanf("%c",&m);
}while(m=='y');

return 0;
}

回答6:

#include"stdio.h"
int main()
{
char Type;
char m;
do
{
printf("**********欢迎光临*******************\n");
printf(" 学生信息管理系统 \n");
printf("1、插入学生信息!\n");
printf("2、修改学生信息!\n");
printf("3、删除学生信息!\n");
printf("4、从文件批量导入学生信息!\n");
printf("5、保存学生信息!\n");
printf("0、退出!\n");
printf("*************************************\n");
printf("请输入相应的数据:\n");
scanf("%s",&Type);
switch(Type)
{
case'1':
printf("您选择的是:插入学生信息!\n");
break;
case'2':
printf("您选择的是:修改学生信息!\n");
// printf("是否继续(Y/N)?”\n");
// scanf("%c",&m);
break;
case'3':
printf("您选择的是:删除学生信息!\n");
// printf("是否继续(Y/N)?”\n");
// scanf("%c",&m);
break;
case'4':
printf("您选择的是:从文件批量导入学生信息!\n");
//printf("是否继续(Y/N)?”\n");
// scanf("%c",&m);
break;
case'5':
printf("您选择的是:保存学生信息!\n");
// printf("是否继续(Y/N)?”\n");
//scanf("%c",&m);
break;
case'0':
printf("您选择的是:退出!\n");
//
break;
default:
printf("输入错误\n");
}
printf("是否继续(y/n)?\n");
scanf("%s",&m);
}while(m!='y');

return 0;
}