c语言,怎么运行不出结果呢

作者&投稿:琴贱 (若有异议请与网页底部的电邮联系)
C语言运行不出结果~

我对你的程序进行了以下操作:
首先是把所有的float类型都改成了double

然后在你的程序前面加上
#include
#include
这两个头文件

再在程序主体部分的
while((T[25]=15))
循环体内一进循环体的位置加上
cout<<T[25]<<"|"<<T[25]-T[0]<<endl;
getch();
这两句话

运行程序得到结果:
20|0
1.#QNAN|1.#QNAN
1.#QNAN|1.#QNAN
1.#QNAN|1.#QNAN
...

说明进入while循环体后进行了一系列操作后T[25]的数据就变成了非法数据

所以我估计是你的while里面的那些公式带的有问题或者怎么样,总之
while((T[25]=15))
条件永远不可能不成立即永远不可能跳出循环体,当然就卡在那里得不到结果了(即所谓的死循环)

因为对你题目要求的公式不太清楚,所以也不好检查你的程序,总之个人感觉就是你的公式带的有问题,T[0]~T[25]计算方法有问题,自己仔细检查下。

你的for循环出错了,for(语句1;语句2;语句3)语句2是用来控制循环长度的,而你的语句2是个空语句所以无限循环。所以你要么添加一个语句2来限制循环长度,要么修改break前边的条件使他能够获得break跳出循环的条件。从你的编程来看我感觉这个用while循环更好。c语言有3种循环,for循环最实用与知道循环次数的条件,while适用于不知道循环次数但是知道限制循环的条件的情况,而do-while和while基本一样,区别是do-while一定会执行一次循环节。

你这个程序问题很多:

首先:对于你的问题“为什么不输出”答案是你这里的判断

if(strcmp(dic[m],word)==0)    break;

问题成立的,因为你的if……else……后面总是 

j=0;
然后在进入else的时候
word[j]='\0';

这样word中一直都是空字符串,你把 j=0这句放到 strcpy(dic[m++],word);后面就可以输出了。


其次,即使这样改,你的逻辑还是有问题的,因为for循环的结束条件是s[i]!='\0';拿 aaa_bbb这个字符串来说,你的程序只能输出aaa,因为最终字符串循环完的时候,for循环直接结束了,你的bbb没有加到dic中去。

你这里用do{……}while(s[i]!='\0');去循环就没有问题了,这个循环比for循环多一次,正好把你漏掉的加进来了。


最后,刚开始编程最好养成好的编码习惯,你程序中很多变量没有用到,比如,你的inword变量一直是0,没有必要定义,编码格式也要规范些,这些小习惯其实挺重要的。



我对你的程序进行了以下操作:
首先是把所有的float类型都改成了double

然后在你的程序前面加上
#include
#include
这两个头文件

再在程序主体部分的
while((T[25]=15))
循环体内一进循环体的位置加上
cout<<T[25]<<"|"<<T[25]-T[0]<<endl;
getch();
这两句话

运行程序得到结果:
20|0
1.#QNAN|1.#QNAN
1.#QNAN|1.#QNAN
1.#QNAN|1.#QNAN
...

说明进入while循环体后进行了一系列操作后T[25]的数据就变成了非法数据

所以我估计是你的while里面的那些公式带的有问题或者怎么样,总之
while((T[25]=15))
条件永远不可能不成立即永远不可能跳出循环体,当然就卡在那里得不到结果了(即所谓的死循环)

因为对你题目要求的公式不太清楚,所以也不好检查你的程序,总之个人感觉就是你的公式带的有问题,T[0]~T[25]计算方法有问题,自己仔细检查下。


...二级c语言程序设计题,为什么我编完后运行不出来啊,但又没有错误...
因为你的s和t已经在循环后改变了,所以是错的,修改方法就是在循环前定义两个临时的字符指针char*保存住s和t,最后返回这个保存的指针就行了

C语言 运行不出的问题
首先纠正下关于return 0;的问题,它并不是赋值语句,而是C语言语句五大分类中的控制语句,其余四个分别为表达式语句,函数调用语句,空语句,复合语句。出现这种错误是软件安装的时候路径设置出错的问题。在工具-》选项-》目录-》目录里面修改路径,将路径修改为你软件安装的路径。需要修改地方比较多,建议...

这个c语言程序问题出在了那。怎么运行不起来?
只要它不是一个空串,程序就进入了循环。在这个while循环的内部,先统计“1”的个数是3个的为“有效”,给变量c计一下数。其中的第二个for循环把这些“1”的票数分配给相应的人。但这是一个“死循环”,进入循环以后就再也出不来了。所以要把while改为if,这样修改以后,就可以试运行程序了。

刚开始学C语言,编了一个简单的程序却怎么也运行不出结果,到底是哪有问...
主要问题是函数类型没写,是int main 还是 void main。还有输出的时候,要输出几个值,就要写几个%d。

C语言不能用了,一运行就出现系统文件不适用运行MS-DOS
2、到C:\\windows\\repair目录下找到autoexec.nt这个文件,复制到C:\\windows\\system32目录,OK.(正常情况下WinXP的windows\\repair 文件夹下都有这个文件,autoexec.nt的作用是"AUTOEXEC.NT is used to initialize the MS-DOS environment",就是初始化16位运行环境什么的。里面真正有效的命令就是下面三行:...

c语言新手求教,为什么运行不了
你要点“是”,这样的话就可以生成一个文件,然后对这个文件进行编译 printf那句话应该是printf("我喜欢c语言");引号是半角的,括号也是半角的,最后还要有一个分号,也是半角的,用来表示这句语句的结束

C语言程序运行后 出现exe停止工作 为什么呢?
C语言程序运行出现exe停止工作的原因是因为内存溢出和编译器错误。第一种:内存溢出 内存溢出(out of memory)通俗理解就是内存不够,程序所需要的内存远远超出了主机内安装的内存所承受大小,就叫内存溢出。系统会提示内存溢出,有时候会自动关闭软件,重启电脑或者软件后释放掉一部分内存又可以正常运行该...

c语言数据结构程序 这个程序哪里有错?为什么运行不出来
两个主要问题:1,while(c)是死循环 2,Str的ch指针需要用new或者malloc分配内存,分配的大小是:strlen(ch) + sizeof(char)

c语言程序为什么运行就是得不出正确结果?
scanf("%lf,%lf,%lf",&a,&b,&c);你的“格式控制”字符串中有逗号,因此输入时必须在三个数之间加逗号。C规定:如果在“格式控制”字符串中除了格式说明以外还有其 它字符,则在输入数据时应输入与这些字符相同的字符。下面 输入是合法的:3,4�此时不用逗号而用空格或其它字符是不对...

百鸡问题c语言程序没有错误可是运行不出来结果
在while括号后面有分号 表示while的语句是空语句,也就是cocks和hens无法加,那么会一直循环无法结束。所以将两个while后面的分号去掉;2、判断问题 条件5*cocks+3*hens+chicks\/3是没有问题的,但是chicks\/3是整数除法,如5\/2=2,会有错,建议改成chicks*1.0\/3,否则可能会出问题。由于不能调试,...

和田市13359908372: c语言程序为什么运行就是得不出正确结果? -
尉迟海邦解: 其实你这个程序是对的,可能是你输入有错,注意到这一句: scanf("%lf,%lf,%lf",&a,&b,&c);你的“格式控制”字符串中有逗号, 因此输入时必须在三个数之间加逗号. C规定:如果在“格式控制”字符串中除了格式说明以外还有其它字符...

和田市13359908372: c语言,运行后为什么没结果. -
尉迟海邦解: 可能情况有:1、是不是程序运行出现错误,如:死循环; 如果是死循环,程序将会进行持续运算,因此不会有退出结果.2、没有输出结果的函数,例如是不是没有printf函数?或者你可以把运行结果和代码发给我看看..

和田市13359908372: C语言运行怎么看不到结果 -
尉迟海邦解: 可以先编译,不要运行.然后切换到命令行模式.然后运行,比如 你的程序叫test.exec:>test.exe > c:\1.txt这样你的C盘下就有个1.txt文件,打开来看看.

和田市13359908372: 为什么我运行C语言后,显示不到结果? -
尉迟海邦解: 为了系统兼容性考虑,使用system("pause");较好,将它加在主函数结尾,return 之前,注意包含头文件stdlib.h另外,用getch();最好包含头文件conio.h************************************************ 原程序有误, int a,b sum; 应改为 int a,b...

和田市13359908372: 为什么我的C语言程序编译正确,但却没有运行结果 -
尉迟海邦解: 一般是程序的逻辑问题,不知道你使的是什么编译器,VC下后缀名要改成.c或.cpp才能有运行结果

和田市13359908372: 为什么C语言程序运行输入后没有输出 -
尉迟海邦解: 1、原因可能是输入格式不对,要输入“浮点数”并用 “逗号” 分隔输入三个数两个逗号后还要额外多加一回车才开始后面的流程, 如果把 scanf("%f,%f,%f\n",&a,&b,&c); 改为 scanf("%f%f%f",&a,&b,&c); 就可以用空白符做分隔了 2、没有输出,不知道计算的结果那算法就没有意义了.输出不一定是要打印到屏幕上的,可以是下一个程序的输入,可以是一个文件、一段语音、一张图像,甚至是机器人的步行动作等等.

和田市13359908372: C语言程序为什么显示不出结果 -
尉迟海邦解: 我运行结果完全正确.你没有出结果可能是你在表达式最后没有加上';'的原因.再试试看吧 麻烦你把运行界面截图贴上来

和田市13359908372: c语言,怎么运行不出结果呢 -
尉迟海邦解: 我对你的程序进行了以下操作: 首先是把所有的float类型都改成了double 然后在你的程序前面加上 #include #include 这两个头文件 再在程序主体部分的 while((t[25]=15)) 循环体内一进循环体的位置加上 coutgetch(); 这两句话 运行程序得到结...

和田市13359908372: 为什么我C语言程序输不出结果 -
尉迟海邦解: 你那是死循环 如果i不为0 ,则i始终成立,所以一直再循环中 #include<stdio.h> void main() {int i,n1=0,n2=0,n3=0,n4=0,n5=0,n6=0,n7=0,n8=0; scanf("%d",&i); while(i) {if(i==1)n1+=1; if(i==2)n2+=1; if(i==3)n3+=1; if(i==4)n4+=1; if(i==5)n5+=1; ...

和田市13359908372: C语言程序运行无输出结果 -
尉迟海邦解: 如果你输入的成绩一直是正数,那while循环是死循环了,所以你要输入一个结束循环的值,输一个负值就会有输出了.

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网