有C语言大神没?求抱大腿解决俩问题,在线等挺急的

(1)文件“身高.txt”中存储了若干位同学的身高(cm),编程读取文件中前3位同学的身高,比较出最高和最低的数据,并将结果输出到显示器中。(2)运用switch语句实现... (1)文件“身高.txt”中存储了若干位同学的身高(cm),编程读取文件中前3位同学的身高,比较出最高和最低的数据,并将结果输出到显示器中。
(2)运用switch语句实现多分支结构,编写四则运算(注意除数为0的处理方法)的程序,完成输入表达式(如:3*3=),计算表达式的值,最后连同表达式及计算结果一并写入文件“算术题.txt”文件中。
展开
 我来答
物理公司的
推荐于2016-05-24 · TA获得超过5698个赞
知道大有可为答主
回答量:6105
采纳率:86%
帮助的人:1394万
展开全部
(1)//新建三个float型变量存储身高
 float a,b,c,temp;
//打开文件,读取身高
FILE *pFile = fopen("身高.txt", "rt");

fscanf(pFile,"%f",&a);//读取身高
fgetc(pFile);//读取分隔符
fscanf(pFile,"%f",&b);
fgetc(pFile);
fscanf(pFile,"%f",&c);
fgetc(pFile);
fclose(pFile);
//身高排序
if(a>b){temp=a;a=b;b=temp;}
if(a>c){temp=a;a=c;c=temp;}
if(b>c){temp=c;c=b;b=temp;}
//排序后 a<b<c
printf("最高为%f,最低为%f",c,a);
(2)
char s[256],flag;
int a,b;
printf("输入表达式:");
for(int i=0;i<256;i++)
{
scanf("%c",&s[i]);
if(s[i]=='\n') {s[i]='\0';break;}
}
//获取表达式中的三个数字和符号
sscanf(s,"%d%c%d=",&a,&flag,&b);
FILE *pFile = fopen("算术题.txt", "w");
//表达式判断
switch(flag)
{
case '+': {fprintf(pFile,"%d%c%d=%d",a,flag,b,a+b);break;}  
case '-':{fprintf(pFile,"%d%c%d=%d",a,flag,b,a-b);break;} 
case '*':{fprintf(pFile,"%d%c%d=%d",a,flag,b,a*b);break;} 
case '/':if (b==0) {fprintf(pFile,"wrong!\n");break;} 
else {fprintf(pFile,"%d%c%d=%f",a,flag,b,double(a/b));break;}
default:fprintf("error!\n");
}
fclose(pFile);
追问
第二问的流程图是什么样的?
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式