为了账号安全,请及时绑定邮箱和手机立即绑定

您好,求教关于C语言程序设计函数的问题,麻烦大佬帮忙看看!

您好,求教关于C语言程序设计函数的问题,麻烦大佬帮忙看看!

喵喔喔 2021-07-08 17:07:03
改错题:【程序功能】函数HolandFlag的功能是:已知在flag指向的有n个元素的字符数组中,每个元素的值是字符‘R’、‘W’或‘B’中的一个。函数按照‘R’、‘W’、‘B’的顺序重新排列flag数组中所有元素的值。算法提示:若flag数组初始值为RBWBRWRBW则在flag数组中出现数据交换的步骤与效果为:第1步:flag[1]与flag[8]交换后数据为RWWBRWRBB第2步:flag[3]与flag[6]交换后数据为RWWRRWBBB第3步:flag[1]与flag[4]交换后数据为RRWRWWBBB第4步:flag[2]与flag[3]交换后数据为RRRWWWBBB【测试数据与运行结果】测试数据:RBWBRWRBW运行结果:RRRWWWBBB【含有错误的源程序如下】:#include<stdio.h>#include<string.h>#denfine 10 Nvoid HolandFlag(char flag[],int num){int i,j,k,m;charc,color[3]={B,W,R};m=num;for(k=0;k<2;k++)for(i=0;i<m;i++)if(flag[i]==color[k]){for(j=m-1;j>i;j--)if(flag[j]==color[k]){c=flag[i];flag[i]=flag[j];flag[j]=c;m--;break;}if(i==j) m=i;}}void main(){char flag[N]="RBWBRWRBW";inti,k,n=strlen(flag);HolandFlag(flag[N],n);for(i=0;i<n;i++)printf("%c",flag[i]);}【要求】1、将上述程序录入到文件111.c中,根据题目要求及程序中语句之间的逻辑关系对程序中的错误进行修改。2、改错时,可以修改语句中的一部分内容,调整语句次序,增加少量的变量说明或编译预处理命令,但不能增加其他语句,也不能删去整条语句。
查看完整描述

2 回答

  • 2 回答
  • 0 关注
  • 298 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信