C语言文件写入txt中逻辑有问题,,求大神帮忙看一下,谢谢帮忙 日语

c语言学生管理系统,保存和读取文件模块有错误,写在txt中的正常,但是读出来就有问题了c语言学生管理系统,保存和读取文件模块有错误,写在txt中的-知识宝库
你可能对下面的信息感兴趣求C语言大神帮忙,解决一下这道题!_百度知道求帮忙找出我的逻辑错误-中国学网-中国IT综合门户网站-提供健康,养生,留学,移民,创业,汽车等信息
> 信息中心 >
求帮忙找出我的逻辑错误
来源:互联网 发表时间: 23:55:21 责任编辑:李志喜字体:
为了帮助网友解决“求帮忙找出我的逻辑错误”相关的问题,中国学网通过互联网对“求帮忙找出我的逻辑错误”相关的解决方案进行了整理,用户详细问题包括:回朔,?递归?/*例1:&&&&1、2、3、4、5这5个数字,输出不同的顺序,其中4不可以排在第三位,&&&&3和5不能相邻,请问有多少种组合?&&&&总的&-&四在中间的&-&3和5相邻的&+&四中间&并3和5相邻的(只能在最左边或最右边)&&&&5*4*3*2*1&-&4*3*2*1&&-&4*3*2&*2&+2*2&*2&&&&120&-&24&-&12*4&+&8&&&&120&-&72&+&8&=&56*/#define&N&&5void&&&TryNumber(&int&&i&);int&&&NumFlag[N+1]&&=&&{0};int&&&NumTaken[N+1]&&=&&{0};int&&&static&count=0;main(&){&&&&&&&&TryNumber(&1&);&&&&&&&&printf("%d\n",count);}void&&&TryNumber(int&&i){&&&&&&&&int&&&j,&&k;&&&&&&&&for(j&=&1;&&j&&=&N;&&j++)&&&&&&&&{&&&&&&&&&&&&if((NumFlag[j]&&!=&&0)||(NumTaken[3]==4))&&&&&&&&&&&&&&if(((NumTaken[1]==3)&&(NumTaken[2]==5))||((NumTaken[2]==3)&&(NumTaken[3]==5))||((NumTaken[3]==3)&&(NumTaken[4]==5))||((NumTaken[4]==3)&&(NumTaken[5]==5)))&&&&&&&&&&&&if(((NumTaken[1]==5)&&(NumTaken[2]==3))||((NumTaken[2]==5)&&(NumTaken[3]==3))||((NumTaken[3]==5)&&(NumTaken[4]==3))||((NumTaken[4]==5)&&(NumTaken[5]==3)))&&&&&&&&&&&&NumTaken[i]&=&j;&&&&&&&&&&&&NumFlag[j]&=&1;&&&&&&&&&&&&if(i&==&N)&&&&&&&&&&&&{&&&&&&&&&&&&&&&&count++;&&&&&&&&&&&&&&&&for(k&=&1;&k&&=&N;&k++)&printf("%d&",&NumTaken[k]);&&&&&&&&&&&&&&&&printf("\n");&&&&&&&&&&&&}&&&&&&&&&&&&else&&&&TryNumber(i&+&1);&&&&&&&&&&&&NumTaken[i]&=&0;&&&&&&&&&&&&NumFlag[j]&=&0;&&&&&&&&}},具体解决方案如下:解决方案1:哪位大神如果能&&优化下我if的条件判断&更加感谢&&&&尤其是第二个&和三个if条件&&我想暴力求解的&原来用的是&numtaken【i】==3&&nunmtaken[i-1]==5&&&&&但是显示的个数是96解决方案2:/*例1:&&&&1、2、3、4、5这5个数字,输出不同的顺序,其中4不可以排在第三位,&&&&3和5不能相邻,请问有多少种组合?&&&&总的&-&四在中间的&-&3和5相邻的&+&四中间&并3和5相邻的(只能在最左边或最右边)&&&&5*4*3*2*1&-&4*3*2*1&&-&4*3*2&*2&+2*2&*2&&&&120&-&24&-&12*4&+&8&&&&120&-&72&+&8&=&56*/#define&N&&5void&&&TryNumber(&int&&i&);int&&&NumFlag[N+1]&&=&&{0};int&&&NumTaken[N+1]&&=&&{0};int&&&static&count=0;main(&){&&&&&&&&TryNumber(&1&);&&&&&&&&printf("%d\n",count);}void&&&TryNumber(int&&i){&&&&&&&&int&&&j,&&k;&&&&&&&&for(j&=&1;&&j&&=&N;&&j++)&&&&&&&&{&&&&&&&&&&&&if((NumFlag[j]&&!=&&0)||(NumTaken[3]==4)||(((NumTaken[i]==3)&&(NumTaken[i-1]==5))||(((NumTaken[i]==5)&&(NumTaken[i-1]==3)))&&&&&&&&&&&&&&NumTaken[i]&=&j;&&&&&&&&&&&&NumFlag[j]&=&1;&&&&&&&&&&&&if(i&==&N)&&&&&&&&&&&&{&&&&&&&&&&&&&&&&count++;&&&&&&&&&&&&&&&&for(k&=&1;&k&&=&N;&k++)&printf("%d&",&NumTaken[k]);&&&&&&&&&&&&&&&&printf("\n");&&&&&&&&&&&&}&&&&&&&&&&&&else&&&&TryNumber(i&+&1);&&&&&&&&&&&&NumTaken[i]&=&0;&&&&&&&&&&&&NumFlag[j]&=&0;&&&&&&&&}}解决方案3:麻烦再帮我吧上面的这个代码看看哪里错误&&谢谢大神解决方案4:你用调试工具设断点&&一步一步的看看就明白了解决方案5:回复楼上&错误我已经找出来了&但是我还是无法修改这个错误&。尝试了几中修改&方式&但是还是没能改出来解决方案6:引用&4&楼&leee7338&的回复:你用调试工具设断点&&一步一步的看看就明白了&&大神&我错误找出来了&是到第五层递归的时候&&判断条件不满足&,但是请教大神如何修改呢&&我尝试了几次都没能成功解决方案7:引用&6&楼&csdtdp&的回复:Quote: 引用&4&楼&leee7338&的回复:你用调试工具设断点&&一步一步的看看就明白了&&大神&我错误找出来了&是到第五层递归的时候&&判断条件不满足&,但是请教大神如何修改呢&&我尝试了几次都没能成功先睡觉了&&脑子有点昏&&明天帮你看看
相关文章:
最新添加资讯
24小时热门资讯
Copyright © 2004- All Rights Reserved. 中国学网 版权所有
京ICP备号-1 京公网安备02号C语言作业,求大神帮忙本人菜鸟,对C语言不是很了解,正好有作业,不怎么会做,所以想请高手帮忙做一下,最好可以讲讲思路等等
这是文件网盘地址
/s/1jGBgHUY
必追加分数
1.求出200以内的整数中,最大的可以被17整除的数是哪个数.#include&stdio.h&main(){\x05int&i,\x05for(i=17;i&200;i++)\x05{\x05\x05if(i%17==0)max=i;\x05}\x05printf(&%d\n&,max);}2.以下程序的功能是调用函数fun计算:m=1+2+3+4+…+9+10,并输出结果.#include&stdio.h&int&fun(){\x05int&m=0,i;\x05for(i=1;i&=10;i++)\x05\x05m=m+i;\x05return&m;}main(){\x05printf(&%d\n&,fun());}3.编程先输入某班10个学生某门课的成绩,对全班10个学生成绩进行由高到低排序,并打印输出排序结果,要求用函数编程实现排序功能.#include&stdio.h&#define&N&10&&&&&&&void&main(){&&&&int&i,a[N],t,j;&&&&for(i=0;i&N;i++)&scanf(&%d&,&a[i]);&&&&&&for(j=1;j&N;j++)&&&&&&&&&&&&&&&&&&for(i=0;i&j;i++)&&&&&&&&&&&&&&&&&&&&&&&if(a[i]&a[j])&&&&&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&t=a[i];a[i]=a[j];a[j]=t;&&&&&&&&&&&&}&&&&&&&&&&&&printf(&排序后:\n&);&&&&&&&&&&&&for(i=0;i&N;i++)&printf(&%d&&,a[i]);&&&&&&&&&&&&printf(&\n&);}4.输入某学生的考试成绩等级A、B、C、D(或a、b、c、d),要求按照等级输出对应的分数段.A级对应分数段为85~100分;B级对应分数段为70~84分;C级对应分数段为60~69分;D级对应分数段为60分以下.#include&stdio.h&void&main(){&&&&char&c;\x05c=getchar();\x05if(c=='A'||c=='a')&printf(&85-100\n&);\x05if(c=='B'||c=='b')&printf(&70-84\n&);\x05if(c=='C'||c=='c')&printf(&60-69\n&);\x05if(c=='D'||c=='d')&printf(&0-60\n&);}5.编程计算1!+2!+3!+……+10!的值#include&stdio.h&void&main(){&&&&int&i,j,n=1,sum=0;\x05for(i=1;i&11;i++)\x05{\x05\x05for(j=1;j&=i;j++)\x05\x05{\x05\x05\x05n=j*n;\x05\x05}\x05\x05sum=n+\x05\x05n=1;\x05}\x05printf(&%d\n&,sum);}6.编一程序:从键盘输入8个整数,计算并输出这8个数的平均数.#include&stdio.h&void&main(){&&&&\x05int&i,a[8],sum=0;float&\x05for(i=0;i&8;i++)\x05{\x05\x05scanf(&%d&,&a[i]);\x05\x05sum=a[i]+\x05}\x05average=(float)sum/8;\x05printf(&%.2f\n&,average);}
//??????????????????????????????
为您推荐:
其他类似问题
扫描下载二维码

我要回帖

更多关于 别人帮忙怎么谢谢人家 的文章

 

随机推荐