c语言运行环境 大神帮我看下我的程序可以运行 看怎么不出结果

求C语言大神帮看下这个程序为什么运行不起来。_百度知道
求C语言大神帮看下这个程序为什么运行不起来。
用意:找出用户输入的字母,并删除。#include&stdio.h&#include&string.h&int main(){ void Find(char *s,char let); char s[20] ;
printf(&Input the characters:\n&); gets(s); printf(&Please input the letter:\n&); scanf(&%c&,&let); Find(s,let); return 0;}void Find(char *s,char let){ void Del(char *m,int a);
for(i=0;*(s+i)!='\0';i++) {
if(*(s+i)==let)
Del(s+i,i);i--;
} } printf(&%s\n&,s);}void Del(char *m,int a){
for(i=0;i&20-a;i++)
*(m+i)=*(m+i+1); *(m+i+1)='\0';}
提问者采纳
void Del(char *m,int a){
for(i=0;i&20-a;i++)
*(m+i)=*(m+i+1); //*(m+i+1)='\0';}只要将最后一段代码注释掉便可运行,从调试来看*(m+i)=*(m+i+1);这句已将'\0'复制了。
提问者评价
切到重点了。我没有知道积分了。还有几个程设问题。如果大神愿意帮助,请加我的QQ:.
其他类似问题
按默认排序
其他4条回答
C语言编写的时候,顶海侈剿侬济畴汐川搂如果调用的函数在本函数的后面的话就需要提前申明,不然编译器不会知道你定义的函数到底是什么。只有提前申明了才知道那是一个函数,编译才不会出错。由于你的main函数是最开始的,所以后面2个函数需要提前申明一下。如下所示:void Find(char *s,char let);void Del(char *m,int a);
是正常的啊,我刚都运行起来了,试了两个结果也是对的。你的编译器是不是要把main函数放在最后啊
我有一次编译成功,运行起来了,可是后来都不行......
这程序没错。
我有一次编译成功,运行起来了,可是后来都不行......
你自己定义的是:先输入字符串然后输入单词你别搞反了。
建议吧定义和方法调用换一下位置
谢谢。我试试。
c语言的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁求C语言大神帮我编一个求翻转数的通俗易懂的程序,网上的上的看不懂。主要是怎么把多余的0去掉。_百度知道
求C语言大神帮我编一个求翻转数的通俗易懂的程序,网上的上的看不懂。主要是怎么把多余的0去掉。
翻转数就是把一个数的所有数字以相反顺序写出来,即原来的第一个数字成为最后一个,而原来的最后一个则成为第一个。我们把未翻转的数称为翻转数的原数。例 如:6789的翻转数是9876,而6789就是9876的原数。你一定注意到了,一个翻转单害厕轿丿计搽袭敞陋数的原数可以有很多个,例如18的原数可以是81、810、8100等等。因此我们假定:通过翻转数求原数时,所求得的原数的个 位不为零。即18的原数就是81。
#include&stdio.h&#include&string.h单害厕轿丿计搽袭敞陋&int&main(){ char&data[100]; char&*p=data,*t; int&
printf(&input&number:&&); scanf(&%s&,&data&);
while(&*p=='0'&)&p++&;&//去头部0
len=strlen(p); if&(&len&)&//原数不是0 {
t=p+len-1&;
while(&*t&=='0'&)&t--&;&//去尾部0
while(&p&=t&)&//倒序输出
printf(&%c&,&*t--&); } else
printf(&0&); printf(&\n&); return&0;}
其他类似问题
通俗易懂的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁有没有那位有时间的大神帮我把程序写出来 语言不用 c语言 谢谢啊_百度知道
按默认排序
为啥不能用C啊
因为我没学c啊
只会又mov那些
你会不会?
会就帮忙写一下啊 谢谢了
数码管是虚拟窗口还是输出设备啊
反正都是在电脑上完成
什么不一样?
不可以用C?
那找别人吧
那能不能完成这个程序
其他类似问题
c语言的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁C语言题目:用户输入数据的验证。哪位大神帮忙编写一下啊,C语言程序一定要能运行起来,不然不给分哦......_百度知道
C语言题目:用户输入数据的验证。哪位大神帮忙编写一下啊,C语言程序一定要能运行起来,不然不给分哦......
要求1:用户输入期型数据进行效性验证;要求2:确输入应改:yyyy-m-d其yyyy4位数字表示份m1~2位数字表示月份d1~2位数字表示;要求3:程序能够任意输入数据进行确性判断保证期确并考虑月、闰等情况
提问者采纳
#include &stdio.h&#include &stdlib.h&#include &string.h&struct date_time{ }DATE;int main(){ int i,len,flag,day_ char str[50],buf[10];
struct date_ int mon[12]; while(1) {
//初始化月份数组
for(i=0;i&12;i++) mon[i] = 31;
mon[1] = 28;
mon[3] = 30;
mon[5] = 30;
mon[8] = 30;
mon[10] = 30;
printf(&please input date eg(yyyy-mm-dd):&);
memset(str,0,50);
scanf(&%s&,str);
len = strlen(str);//
if(len!=10)//度直接报错 0000 - 9999
printf(&input error!\n&);
while(len--)//数字报错
if(str[len]&'0'||str[len]&'9')
printf(&input error!\n&);
if(flag)//面检测错 进行if面操作
//判断否闰
memset(buf,0,10);
strncpy(buf,str,4);
date.year = atoi(buf);
//printf(&date.year = %d \r\n&,date.year);
if((date.year%4==0)&&(date.year%100!=0)||(date.year%400==0)) mon[1]=29;
//判断月份否合
memset(buf,0,10);
strncpy(buf,str+5,2);
date.month = atoi(buf);
//printf(&date.month
= %d \r\n&,date.month );
if(date.month&12||date.month&1)
printf(&month input error!\n&);
//判断期否合
memset(buf,0,10);
strncpy(buf,str+8,2);
date.day= atoi(buf);
//printf(&date.day = %d \r\n&,date.day);
if(date.day&31||date.day&1)
printf(&day input error!\n&);
}day_cnt = 0;
for(i=0;i&date.month-1;i++)
day_cnt += mon[i];
printf(&mon[%d] = %d \r\n&,i,mon[i]);
day_cnt += date.
printf(&days = %d \r\n&,day_cnt);//输入期第几
} } return 0;}楼主 求
怎么输入的时候不对啊?难道是我输入错误了?请指点啊
while(len--)//不是数字报错
if(str[len]=='-')//加这一句在这里
if(str[len]&'0'||str[len]&'9')
printf(&input error!\n&);
}不好意思啊 楼主
提问者评价
其他类似问题
c语言程序的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁12:56:57【 转载互联网】 作者: &&|&责编:李强
&&& &为了解决用户可能碰到关于"以下是我在VC上用C语言运行的回溯法解旅行商问题的程序,运行结果不对啊,哪位大神能帮我修改一下。"相关的问题,突袭网经过收集整理为用户提供相关的解决办法,请注意,解决办法仅供参考,不代表本网同意其意见,如有任何问题请与本网联系。"以下是我在VC上用C语言运行的回溯法解旅行商问题的程序,运行结果不对啊,哪位大神能帮我修改一下。"相关的详细问题如下:} extern float cw=0,50;=n,19;
/}} float btTSP(float W[][6];);n&quot,0},10;
tspBacktrack(2,X[j]);回溯递归函数,1,24;bestW){
for(int j=1;bestW){
Swap(X[i];
/n&#92。{
if((cw+W[X[n-1]][X[n]]+W[X[n]][1])&lt,0,所有的带[0]的行列不用;打印出最小权值是多少
return 0;&#47,0,float W[][6],只好搞了许多全局变量;/
printf(&quot,6,0;
bestW=cw+W[X[n-1]][X[n]]+W[X[n]][1]。extern int X[6]={0},W;n&quot,25;%d & void Swap(int X;回溯算法,27;),0,5;
cw-=W[X[i-1]][X[j]],n);j++)
bestX[j]=X[j]。{
for(int i=1;j&lt,6。;
printf(&设置一个5*5的权矩阵用于测试;k&lt,不使用[0][0];打印出最佳路线结点顺序
printf(&quot#include&&#47,bestw),0;stdio,9,0,40;extern float bestW=1000,以5*5的代价矩阵为例,0;
X=Y;=n;&#92:&quot。
float w[6][6]={0,W,25,不使用[0][0],int n)
tspBacktrack(i+1,X[j]),17;
Y=temp,0: %f&#92,5),31,0,22;
for(int k=1;不知道如何在子函数中再定义子函数;;j&lt,30;i++) X[i]=i,int n)
/} int main(){
Swap(X[i];extern int bestX[6]={0};
float bestw=btTSP(w;void tspBacktrack(int i,bestX[k]).h&gt,0;&#47,0;
cw+=W[X[i-1]][X[j]];i&;交换函数{
int temp=X;}}
for(int j=i;=n;=5,8;The bestW/&#47,以5*5的代价矩阵为例,0;
return bestW,0;k++)
if((cw+W[X[i-1]][X[j]])&lt,n),7;T&#47,15,int Y)
&#47===========突袭网收集的解决方案如下===========
解决方案1:没看你后面的部分,即swap(&a;}调用时传地址;
*y=temp,int *y){
int temp=*x;
*x=*y,因为作用域只是函数内的局部变量x和y改为void swap(int *x,传值方式不能达到交换的作用,就说第一段程序问题swap()函数必须使用传地址方式,&b)形式。修改后你再试试你的程序对不对解决方案2:兄台真乃神人也,但是这样改完还是不行哩,最小代价结果不对。还交换为啥一定要用传地址的方式哩。晕哦。不知前辈学过算法分析没有,学到旅行商问题这里真心晕了呃,后来解决了,把else里的 cw+=W[X[i-1]][X[j]]和 cw-=W[X[i-1]][X[j]]都改成W[X[i-1]][X[i]]就行了。。。谢谢了解决方案3:分数全给这位大大啦!!嘿嘿 。多谢 !
================可能对您有帮助================
问:#include&stdio.h& void Swap(int X,int Y) //交换函数 { int temp=X; X...答:我没看你后面的部分,就说第一段程序问题 swap()函数必须使用传地址方式,传值方式不能达到交换的作用,因为作用域只是函数内的局部变量x和y 改为 void swap(int *x,int *y) { int temp=*x; *x=*y; *y= } 调用时传地址,即swap(&a,&b)形式...===========================================问:#include&stdio.h& void main() { int a,b,c, scanf("%d,%d,%d",a,...答:你直接用我这个吧,注意学习这种思路,排一次序时不可能解决问题的,还有问题的话再提出来哈。 main() { int a,b,c,n,i=1; printf("input three number:\n"); scanf("%d,%d,%d",&a,&b,&c); for(;ib) { n=a;a=b;b=n; } if(b&c) { n=b;b=c;c=n; } ...===========================================问:用vs2012敲了一段代码,可以无错运行。可是我用c—Free的时候就运行不了...答:有可能是不支持中文文件名,你将文件 源.c 改为英文名试试===========================================问:用vs2012敲了一段代码,可以无错运行。可是我用c—Free的时候就运行不了...答:比如八皇后问题,要在8×8的棋盘上放置8个皇后,使8个皇后不相互攻击,即使所有皇后不能位于同一横行、同一竖行或同一斜行。我们在程序中,首先考虑在第一列放置第一个皇后的情况,有8种放法。接下来考虑在第二行放第二个皇后,也是有8种放法,但...===========================================问:最好用简单容易理解的方法写出来,我是菜鸟,如果可以,最好加上注释,...答:(1)全排列 将自然数1~n进行排列,共形成n!中排列方式,叫做全排列。 例如3的全排列是:1/2/3、1/3/2、2/1/3、2/3/1、3/1/2、3/2/1,共3!=6种。 (2)8皇后(或者n皇后) 保证8个皇后不能互相攻击,即保证每一横行、每一竖行、每一斜行最多一个皇后...===========================================问:我写的一些C语言程序能在win-TC,等下编译成功,但是在VC++6.0下却不行...答:#include "stdio.h" int main(){ printf("Hello C-world!\n"); printf(" ****\n"); printf(" *\n"); printf(" * \n"); printf(" ****\n"); return 0; }===========================================问:我写的一些C语言程序能在win-TC,等下编译成功,但是在VC++6.0下却不行...答:你好! 一般的贪吃蛇这样的游戏,都会用到图形库,而VC里面不包含这样的图形库; 所以,要想编译,只能在TC下完成,因为TC含有图形库; 或者在你的VC上加载图形库!===========================================问:我写的一些C语言程序能在win-TC,等下编译成功,但是在VC++6.0下却不行...答:xcode编译器比vc严格很多,vc早就淘汰的产品了,自身就是一大堆bug,vs早顶替vc了,vs后期版本修复了不少已知的bug,但是类型检查之类的东西还是不严格,而且vs编译器一贯秉承了vc那种傻瓜式编程的风格,对于类型匹配、安全检查之类的东西,编译...===========================================问:#include &stdio.h& main() { int num,c; scanf("%d",&num); do {c=num%...答:1、输入23,输出32 类似:输入12345 输出54321 2、输出3,7 sum n 10 1 9 2 7 3 然后就输出了 3、输出 8,7 最好的办法就是运行一下 有机会运行一下 效果会更好===========================================有8种放法。接下来考虑在第二行放第二个皇后,也是有8种放法,但是有一些放法是不合... 我们必须马上把它和它的解空间子树剪掉,这就是"剪枝"。如果发现在第j列放置第j个皇后...=========================================== ===========================================VC里设置没用,和VC无关,VC6就这个德行。VC的集成环境调用编译器c1.exe,是根据操... 我的电脑--(右键)属性--高级--环境变量--系统变量 PATH,确保包含有这样的路径: 你的vc...===========================================在控件(c)里选择"调试",然后在右栏选择"添加命令"-在类别(G)里选择"调试",在右边的"命令(D)"里选择"开始执行(不调试)"(是一个空心的绿色三角形)。你也可以在工具栏上右击,然...===========================================在return 0;以前,加上getchar();===========================================貌似是不行,现在的上机系统都是支持VC6的~===========================================Ellipse(HDC hdc, int nLeftRect, int nTopRect, nRightRect, int nBottomRect);函数功能:该函数用于画一个椭圆,椭圆的中心是限定矩形的中心,使用当前画笔画椭圆,用当前的画刷填...===========================================打开VC6.0。选:文件》新建》先WIN32 CONSOLE Application 》再输入你所想的工程名称》再按确定》完成》确定》 ;然后再》文件》新建》C++ SOUCE FILES 最好就可以输...===========================================在这个地方纠结!!!这种题目最好不要过分去纠结!!当然它也不是一无是处,至少它告诉你... 用不同的编译器编译得到的结果是有可能不一样的!!!你知道有这种情况并且掌握C的语...===========================================你那样做最终会产生.cpp(C语言程序源码),.dsw(项目工作区文件)和.dsp(工程文件)这几个主要的文件,你说的"文件扩展名"中的文件如果指的是C语言源程序的话会产生.cpp的扩...===========================================
12345678910

我要回帖

更多关于 运行c语言的软件 的文章

 

随机推荐