新手学C问题:为啥我的C语言程序老是闪退?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了新手学C问题:为啥我的C语言程序老是闪退?相关的知识,希望对你有一定的参考价值。

#include<stdio.h> #include<stdlib.h> int main() int year; for (year=1000;1000<year<2000;year++) if (year%4==0) printf("%d\t",year); else if (year%100==0) printf("%d\t",year); else if(year>2000) break; system("pause"); return 0;
 不是很清楚说的测试for语句什么意思...我把for修改了一下,依然是一个闪退程序= =

一闪而过是程序自动结束,同时编译器没有提供结果驻留功能。对于此种情况,可以手动在代码结尾增加驻留功能的函数。常用的有如下两种:

1 通过getch函数驻留。
getch会等待从屏幕的输入,在main函数退出前,增加
getch();
调用,系统会等待输入,直到有新的输入,才会退出界面。

2 通过system("pause");来实现驻留。
在main退出前调用
system("pause");
会调用系统的pause函数,提示并实现按任意键退出程序效果。

如果是已经编译好的C语言程序,可以通过开始->运行,键入cmd后回车。
在打开的命令行窗口,将可执行文件拖动到窗口上,再回车即可运行该程序,在此窗口不会出现闪退,从而观察运行结果。

由于该问题仅在windows平台出现,所以以上介绍均针对windows平台。
参考技术A #include<stdio.h>
#include<stdlib.h>
int main()

int year;
for (year=1000;1000<year&&year<2000;year++)

if (year%4==0) printf("%d\t",year); else if (year%100==0) printf("%d\t",year); else if(year>2000) break; system("pause"); return 0; 追问

你这个一样闪退啊

参考技术B 在return 0; 前加一条语句 getchar();追问

然后就什么都没显示了?
还有我们没学这个语句的= =

追答

你的程序有问题,1000= 1000 && year < 2000

追问

恩改了,谢谢。不过情况一样。。。

追答

不清楚你是什么情况,用的什么编译器,不过还请你看清楚了, year >= 1000,大于等于哦。

追问

'Devc++

本回答被提问者采纳
参考技术C 推荐个软件给你,叫 啊哈c 它会帮你设置好。追问

C的作用对我来说更多是学习而已= =
不然的话以我的智商没点好的基础什么都干不了...

一直都有的。。

追答

for语句 为 for(year=1000;(year>=1000)&&(year<2000);year++)

追问

是啊,我那个文件写了的

追答

看我的  for语句    for(year=1000;(year>=1000)&&(year<2000);year++)  ,你的for 循环本身就进不去

追问

恩修改过了

追答

可以吗?你要注意你的逻辑语句的处理

追问

现在在用手机,我把我那个提问的时候补充里的程序没修改过的放到c4里都能输出。。

我电脑的的dev老是闪退。。

真的有的。。。就是闪过正确的程序

追答

那怎么我的没问题。写个测试语句,看能不能进入for 循环

为啥安卓手机老是闪退啊?

如果您使用的是华为手机,手机应用出现闪退的现象,可能是应用版本过旧、应用权限未开通,系统内存不足等原因,请您按照以下方法排查:

1、将应用和系统版本升级至最新(新版本会提升兼容性和稳定性)

(1)更新应用版本:进入华为应用市场,搜索应用更新至最新版本使用。

(2)更新系统版本:进入设置,搜索软件更新或系统和更新,点击检查更新,如果有新版本请您提前备份数据(QQ、微信等第三方应用需单独备份)及时升级到最新版本。

2、重启应用

进入设置,搜索进入 应用管理界面,找到闪退的应用,点击强行停止,然后重新打开该应用使用。

3、清除缓存数据

(1)系统内存不足可能会导致一些占用内存大的应用出现闪退的现象,建议您及时清理设备存储空间。建议保证可用内存至少剩余20%。

(2)可能是应用缓存文件出现异常,您可以删除应用数据尝试:打开设置,搜索进入应用管理,找到具体应用,然后点击存储 > 删除数据 。

温馨提醒:删除数据操作可能会将部分应用数据删除,如“微信、旅行青蛙”,建议您提前备份数据。

4.卸载重装应用

在桌面上长按应用图标,点击卸载。然后在华为应用市场重新下载安装使用。

温馨提醒:卸载重装会导致应用数据被删除,如“微信、旅行青蛙,建议您提前备份数据。

5.仍然无法解决?

(1)如果是某个应用一直闪退,建议您致电华为热线客服950800咨询。

(2)如果问题仍无法解决,请您提前备份好数据(QQ、微信等第三方应用需单独备份),携带购机凭证前往华为客户服务中心检测。

相关链接如下:华为客户服务中心维修备件价格查询预约服务寄修服务

参考技术A 安卓手机闪退及解决办法
1、应用缓存过多导致软件闪退,由于Android手机的系统特性,应用程序缓存过多,会导致手机运行缓慢并闪退。 建议在日常使用手机的过程中,及时清理应用程序保存和缓存的部分数据。

2、应用后台运行过多导致软件闪退,建议及时关闭未使用的应用程序后台,清理数据,重新打开手机程序。

3、手机杀毒软件导致软件闪退,有些手机杀毒软件有恶意代码,会被防病毒软件阻止无法正常访问。

4、应用版本问题导致软件闪退,如果应用版本较低或不兼容,会导致应用软件闪退。建议及时更新APP或手机系统。

5、网速问题导致软件闪退,例如王者荣耀之类的大型软件在使用时需要稳定的网络,并且如果存在网络问题,则可能导致闪退。

以上是关于新手学C问题:为啥我的C语言程序老是闪退?的主要内容,如果未能解决你的问题,请参考以下文章

为啥C语言程序运行时打开后自动闪退??

c语言编程做出程序后闪退是怎么回事?求大神 本人菜鸟!

C语言写的链表。明明没有错误,为啥编译器还会报错,?而且还爆出100+的错误,求解。

上月#编程语言排行榜#C语言击败Java 排名第一,新手学C语言还是Java?

新手请问Go语言中包的问题

8月编程语言排行榜:C语言击败Java 排名第一,新手学C语言还是Java?