runtimeerror怎么解决 c

| 美国大学预科 |

【www.guakaob.com--美国大学预科】


篇一:c语言编程runtime error怎么解决

#define M 4
#include"stdio.h"
int fun(int a[][M])
{
int i,j,max;
max=a[0][0];
for(i=0;i<=2;i++)
for(j=1;j<=M;j++)
{if(a[i][j]>max)
max=a[i][j];}

return max;

}
void main()
{
int arr[2][M]={5,8,3,45,76,-4,12,2}酣笭丰蝗莶豪奉通斧坤;
printf("\nThe value of function is:%lf\n",fun(arr));
}这有什么问题啊,请大虾指教~~~好的话可以追加到50分

LZ你有两个地方有酣笭丰蝗莶豪奉通斧坤问题:
(1)fun函数里面两个for循环控制变量有问题,应改为下面这种形式:
for(i=0;i<2;i++)
for(j=0;j<M;j++)
{
if(a[i][j]>max)
max=a[i][j];
}
(2)输出的时候也有问题,fun函数返回值是int,所以应该是:
printf("\nThe value of function is:%d\n",fun(arr));


篇二:C语言Runtime error怎么解决

题:acm.bnu.edu.cn/.../37734
代码:
#include<stdio.h>
int main()
{
int count,i;
char a[80];
i=0;
while((a[i]=getchar())!='\n')
i++;
a[i]='\0';
count=0;
for(i=0;a[i]!='\0';i++){
if(a[i]>'A'&&a[i]<='Z'&&a[i]!='E'&&a[i]!='I'&&a[i]!='O'&&a[i]!='U')
count++;
}
printf("%d",count);
printf("\n");
return 0;
}
为什么提交了是runtime error?该怎么改?

是不是要求 必须 用java 和 64位整型 格式输入,不允许用 C.
C 语言 gets() 速度是否更快点?

#include<stdio.h>
int main(){
int count=0,i,L;
char a[80];
gets(a);
L=strlen(a);
for(i=0;i<L;i++){
if(a[i]>'A'&& a[i]<='Z&敞搐搬诽植赌邦涩鲍绩#39;)
if (a[i] !='E' && a[i]!='I' && a[i]!='O' && a[i]!='U') count++;
}
printf("%d",count);
printf("\n");
return 0;
}



篇三:c runtime error怎么解决

#include <stdio.h>
void main()
{int i,j;
char a[39][6];
a[0][0]=420.764; a[1][0]=821.528;a[2][0]=1222.292;
if (j>0) a[0][j]=20.000;
for(i=0;i<39;i++)
a[i][5]=20.000;
for(i=3;i<39;i++)
a[i][0]=1300.000;
for(i=1;i<39;i++)
for(j=1;j<6;j++)
a[i][j]=(a[i+1][j]+a[i-1][j])/2;袱担递杆郛访店诗锭涧
for(i=0;i<39;i++)
{for(j=0;j<6;j++)
printf("%f",a[i][j]);
printf("\n");
}
}
运行后出现runtime error,十万火急,万分感谢

查看"编程语言"专题栏目


篇四:c语言runtime error怎么解决

下面这段程序在运行到输出输入的数组和分隔符行后就停止运行提示runtime error了,求大神解决!
#include<stdio.h>
#include<stdlib.h>
int i,j;
int t[5][10],avet[5];
int main()
{
void stuave(int a[5][10]);
void proave(int a[5][10]);
void maxx(int a[5][10]);
void squave(int a[5][10]);
int k=0;
for(i=0;i<5;i++)
{
for(j=0;j<10;j++)
{
t[i][j]=rand()%100;
printf("%4d",t[i][j]);
k++;
if(k%10==0)
printf("\n");
}
}
printf("==========================\n");
stuave(t);
proave(t);
squave(t);
maxx(t);
return 0;
}
voi甫笭颠蝗郯豪奠通订坤d stuave(int a[5][10])
{
int s;
for(i=0;i<5;i++)
{s=0;
for(j=0;j<10;j++)
{s+=a[i][j];}
printf("%4f;",s/10);
avet[i]=s/10;
}
}
void proave(int a[5][10])
{
int p;
for(j=0;j<10;j++)
{p=0;
for(i=0;i<5;i++)
{p+=a[i][j];}
printf("%4f;",p/5);
}
}
void maxx(int a[5][10])
{
int max;
int proi,proj;
max=a[0][0];
for(i=0;i<5;i++)
{for(j=0;j<10;j++)
if(max<a[i][j])
{max=a[i][j];
proi=i;proj=j;}
}
printf("本次最高分为%d号同学的第%d门课\n",proi+1,proj+1);
}
void squave(int a[5][10])
{
int pq,qp;
pq=0;qp=0;
for(i=0;i<5;i++)
{pq=pq+avet[i];
qp=qp+avet[i]*avet[i];
printf("%4f\n",(pq*pq/10-qp/100));
}
}

在我这运行甫笭颠蝗郯豪奠通订坤只是有几个警告而已,没发现有runtime error。
警告分别是:37行,48行和71行。只要将输出的数据强制转换成double类型就没有警告了。



篇五:runtime error怎么解决programc

方法: @Test public void testLogin() { System.out.println("Executing Login Scenario"); methodName = Thread.currentThread().getStackTrace()[1].getMethodName(); try { impScreen.login讥掸罐赶忒非闺石酣将(methodName); } catch (Exception e) { e.printSt...



篇六:C语言出现Runtime Error 是怎么回事?该怎么解决?

我的代码如下:求N个正整数的最小公倍数,
#include<stdio.h>
int GCD(int a,int b)
{
if(a<b)
return GCD(b,a);
if(b==0)
return a;
else
return GCD(b,a%b);
}
int LCM(int a,int b)
{
return a*b/GCD(a,b);
}
int main()
{
int n,i;
while(scanf("%d",&n)!=EOF)
{
int a,a1,a2,j,k;
if(n==1)
{
scanf("%d",&a);
printf("%d",a);
}
else
{
scanf("%d %d",&a,&a1);
j=LCM(a,a1);
if(n==2)
printf("%d",j)处单边竿装放膘虱博僵;
else
{
for(i=3;i<=n;i++)
{
scanf("%d",&a2);
k=LCM(j,a2);
j=k;
}
printf("%d",k);
}
}
printf("\n");
}
return 0;
}

可能是输入的数太大,导致求LCM的过程中,a*b超过整型范围了吧.


篇七:c语言runtime error怎么解决

#include<stdio.h>
int main()
{
int T,q,l,r,i,j;
int a[1100];
long n,max;
scanf("%d",&T);
for(j=1;j<=T;j++)
{
scanf("%ld",&n);
for(i=1;i<=n;i++)
{
scanf("%d",&a[i]);
}
scanf("%d",&q);
for(i=1;i<=q;i++)
{
scanf("%d %d",&l,&r);
max=a[l];
if(l==r)
printf("%d\n",max);
else if(l<r){
for(i=l;i<r;i++)
{
if(a[i]<=a[i+1])
max=a[i+1];
else
max=a[i];
}
printf("%ld\n",max);
}
}
}
return 0;
}

看你的意思是求最大值姬储灌肥弑堵鬼瑟邯鸡吧,我理解的是先对一个数组赋值,然后给出一个区间,得到这个区间的最大值。如果是这样的话,你的程序多了好多循环~~
if(a[i]<=a[i+1])
max=a[i+1];
else
max=a[i]; 这一块是有问题的 else 后面 max应该保持不变吧?为什么要等于 a[i]呢,你想想。

然后捋一下流程

for(xxx)
{
对数组赋值
}

get区间下标,i,j

for(在区间,i,j循环)
{
你出错的那段代码
}

输出max

这样就可以了吧

本文来源:http://www.guakaob.com/xuelileikaoshi/62319.html