❶ 在c语言中,计算机程序通常有哪几种错误
1、系统错误:这是指程序没有语法错误和逻辑错误,但程序的正常运行依赖于某些外部条件的存在,如果这些外部条件缺失,则程序将不能运行。
2、语法错误:这是指程序中含有不符合语法规定的语句,例如关键字或符号书写错误(将printf写成print、将数组元素引用写成a(2)等)、使用了未定义的变量、括号不配对等。
3、逻辑错误:这是指程序中没有语法错误,可以通过编译、连接生成可执行程序,但程序运行的结果与预期不相符的错误。
(1)c语言应用程序应用程序错误扩展阅读:
C语言程序的特点
1、采用结构化的控制语句,是完全模块化和结构化的语言。
2、数据类型丰富,具有现代语言的各种数据结构
3、语法限制不太严格,程序设计自由度大,同时也意味着容错性差。
4、允许直接访问屋里内存,能进行位操作,能实现汇编语言的大部分功能,可直接对硬件进行操作,兼有高级和低级语言的特点。
5、目标代码质量高,程序执行效率高(比汇编程序生成的目标代码低10%-20%)
6、允许在编译之前使用预处理命令,提高编程效率。
7、以内存使用为核心。
8、C语言程序是由函数构成的。一个源程序不论有多少个文件组成,包含多少个函数,都有且一个 main 函数,及主函数。一个程序总是从 main 函数开始执行,而不论 main 函数在程序什么位置,程序的执行也结束于主函数,其他函数通过函数调用被执行。
9、函数都要有类型说明,放在函数名前,如 void 表示空类型,没有返回值。
10、函数体内语句一般按四大功能顺次排列,即首先对变量与函数做声明 ——>变量赋初值 ——>数据计算与处理 ——>输出结果。
❷ c语言运行时出现程序运行错误如何解决。代码如下
错误地方很多
sort函数返回值就不对,不能返回数组,sort函数里面直接修干数组,不需要返回
排序冒泡法 交换数值
temp=a[y];
a[y]=a[y+1];
a[y+1]=temp;
y+1 超出范围,上面for(y=0;y<b-x;y++) 改为for(y=0;y<b-x-1;y++)
#include<stdio.h>
#define ARRAYSIZE 10000
int main()
{
int sort(int a[ARRAYSIZE],int b,int c);
int i;
int date[ARRAYSIZE]={10,20,30,40,50};
int n=5;
for(i=0;i<n;i++)
printf("%d ",date[i]);
printf("\n");
int addN;
scanf("%d",&addN);
printf("%d\n",addN);
sort(date,n,addN);
//把这里的sort(date[ARRAYSIZE],n,addN)改一下
n=n+1;
for(i=0;i<n;i++)
printf("%d ",date[i]);
return 0;
}
int sort(int a[ARRAYSIZE],int b,int c)
{
int x,y,temp;
a[b]=c;
b=b+1;
for(x=0;x<=b-1;x++)
{
for(y=0;y<b-x;y++)
if(a[y]>a[y+1])
{
temp=a[y];
a[y]=a[y+1];
a[y+1]=temp;
}
}
return 0;
}
❸ C语言一运行到这个子函数就应用程序错误
错误在于子函数的定义,你的isprime函数不能写在主函数里,应该在主函数外定义了才能用,而且你的主函数并没有写完整。你先把函数声明补充一下,然后再调用即可
❹ c语言,运行时候 应用程序错误 如图,求解答
creat函数大大的有问题呀!
首先a是局部变量,你用p1,p2,head去操作&a,实际上都是同一块内存,并且这块内存在return就释放了!所以在print的时候就内存错误。
你要malloc,free函数来分配/释放内存。
p1 = &a; ==> p1 = (struct stu*)malloc(sizeof(struct stu));
你这是对c内存情况不是很了解的结果
另外p2->next = p1; 这句p2之前并没有为其初始化或赋值,所以这里也是会挂掉的
❺ c语言程序运行错误
scanf_s("%s", name, 39);
这是最主要的问题,顺便把宏也改成如下形式:
#define DENSITY 62.4
即去掉分号
❻ C语言应用程序错误。
改掉:scanf("%d",a[i]);
写成:scanf("%d",&a[i]);
0xCCCCCCCC这个地址不是用户地址,所以无法访问.用户只能访问0~0x7FFFFFFF的虚拟地址.
❼ c语言编程时候出现“应用程序错误”怎么办
请上报错那部分的代码。
0xcccccccc是C语言里没有赋初值的指针变量的值。
建议定义指针变量时立刻初始化。比如char *p = NULL之类的。
❽ C语言运行过程中提示应用程序错误
#include<stdio.h>
#include<conio.h>
intmain(){
charpassword[36],ch;
intn=0;
while((ch=getch())!=' '&&n<36){
if(ch==8){
printf("");//删除刚输入的字符
--n;
}
else{
printf("*");
password[n++]=ch;
}
}
password[n]='