C语言刚开始学 ~~有个改错题不会~~

作者&投稿:尾股 (若有异议请与网页底部的电邮联系)
C语言改错题不会?~

图1
a=t;改成b=t;
r=a/b;改成r=a%b;
return a;改成return b;
scanf("%d%d",num1,num2);
改成
scanf("%d%d",&num1,&num2);
图2
double f=0;改成double f=1;
i<m;改成i<=m
(2i-3)改成(2*i+1)

#include#define N 4int fun(int arr[N][N]);{/****************begin*****************/int i,j; for(i=0;i<N;i++)for(j=0;j<N;j++){while(i==j)sun=+a[i][j];}return sum; /****************end*******************/}int main(){void NONO( );//函数声明int a[N][N]={1,6,2,2,3,5,4,5,8,4,5,6,4,5,6,7}int i,j ,sum;printf("array is:
");for(i=0;i<N;i++){for(j=0;j<N;j++) printf("%5d",a[i][j]);printf("
");}sum=fun(a);printf("result is: %d
,sum);NONO( );return 0;}void NONO(){FILE *fr,*fw; int i,j,x[N][N]; fr=fopen("E:\\homework\\20060735.DAT","r"); fw=fopen("E:\\homework\\20020735.DAT","r"); for(i=1;i<=5;i++){for(j=0;j<N;j++) fscanf(fr,"%d,%d,%d,%d",&x[j][0],&x[j][1],&x[j][2],&x[j][3]); fprintf(fw,"resultis: %d
",fun(x)):}fclose(fr);fclose(fw);}你看看对吧。我这给机子没有运行软件。
基本思路就是使i=j,来计算和。

#include "stdio.h"; /* 这里多了分号 */
main()
{float r,s;
r=5.0;
s=3.14159*r*r;
printf("%f\n",s) /* 这里少了分号 */
}

#include "stdio.h"
main()
{float a,b,c,v;
a=2.0;b=3.0;c=4.0 /* 这里少分号 */
v=a*b*c;
printf("%f\n",v) /* 这里少分号 */
}

这题是够简单的,你要么就是懒,要么就是不细心。

第一道题,printf(\"%f\\n\",s) 后面少一个分号 ;
第二道题,也是两个地方少分号,a=2.0;b=3.0;c=4.0 ;printf(\"%f\\n\",v)
另外,这两道题最好main() 前面加 void (推荐)
在c语言里面,一个语句结束必须要有分号;

printf("%f\n",s)
后面少一个分号

printf("%f\n",v)
一样!少一个分号:)

第一道题,printf(\"%f\\n\",s) 后面少一个分号 ;
第二道题,也是两个地方少分号,a=2.0;b=3.0;c=4.0 ;printf(\"%f\\n\",v)
另外,这两道题最好main() 前面加 void (推荐)

想问一下楼主是不是也在学计算机二级C语言啊.是不是高等教育出版社的那本书啊.

RIGHT


西区18094837176: c语言改错题 有一个位置不知道怎么改 -
阎露益通: “第二个错误我改成了t=1/(2*n+1);n=n+1”,最后少了一个分号.不过这可能不是问题.while(t》=0.00001); 不过这可能也不是问题.你应该把出错的提示写出来,根据它来判断,这样是很难看出错来的.

西区18094837176: 大学C语言 改错题
阎露益通: 改好了: main()//改成小写 { int x; int y;//定义变量在前面 scanf("%d",&x ); y=5*x; printf("%d\n",y);//y应该小写 }

西区18094837176: 大一初学C语言有若干不会的题,求解 -
阎露益通: ///第一题改错: #include <stdio.h> mian() { int r2=5;//变量名不能为数字开头,将2r改成r2即可 char _3x='A';//同上变量名不能以-号开头,将-改成_即可,或者改成x3也行 double i=10.5;//不能将关键字void作为变量名称,这里我把变量名称命名...

西区18094837176: C语言改错题 急 -
阎露益通: main() { int a,b; int *p1,*p2; scanf("%d,%d",&a,&b); p1=&a; /* a ->&a */ p2=&b; /*b -> &b */ if(a>b) swap(p1,p2); printf("%d,%d\n",*p1,*p2); printf("%d,%d\n",a,b); } swap(int *p_1,int *p_2) /* p_1 -> *p_1, p_1 -> *p_2 */ { int p; /*p -> p */ p=*p_1;...

西区18094837176: C语言,改错题,第二空不会啊 -
阎露益通: 把这一行用花括号{}括起来.否则程序不会达到目的.因为在for语句中,如果没有花括号,程序默认的是到第一个分号出现时循环体结束,那么只有一句t=a[i];被执行,后面两句a[i]=a[j];a[j]=t;不会被循环执行,既使你把他们写在一行上也不行.只能把他们花括起来:{t=a[i];a[i]=a[j];a[j]=t;} 你试一试看?

西区18094837176: 刚开始学C语言,遇到了一些问题,麻烦高手修改一下,谢谢. -
阎露益通: 这个警告是说你将一个double类型的数赋给一个float类型的数,double类型精确度更高,所以会造成数据丢失,也就是将低位去掉,只是warning还是可以编译和执行的,如果是error就不行.为了不出现warning可以这样改 一: float area;改成double area; 二: float area;改成double area;double radius=5;改成float radius=5; 明白吗?两个float型的数相乘再乘PI变成了一个double型. 对应你的补充的解决方法:这样很简单 将area=PI*radius*radius;改成area=float(PI*radius*radius);就可以了.

西区18094837176: c语言初学者,求改错. -
阎露益通: gets会遇到输入缓冲区中的回车符,导致什么字符都没输入就直接返回 把gets(a[n]); 换成scanf("%s",a[n]); 就可以了

西区18094837176: C语言:改错题2 -
阎露益通: 3. while循环应包括输入过程,count没有初始化,修改如下:#include void main() { int count,grades; printf("请输入分数:"); count...

西区18094837176: c语言改错题,大神们,拜托了 -
阎露益通: 你的C语言程序,我帮你改完了,你看看吧.(错误比较多,几乎每行都有改动)#include <stdio.h> int main() { int a;char ch; ch='A'; scanf("%d",&a); printf("%c+%d=%c\n",ch,a,(char)(ch+a)); return 0; } 运行结果2 A+2=C

西区18094837176: c语言程序设计的改错题
阎露益通: 我想你的问题是处在了t=s/10这行代码上,你这行代码的本意是获取个位上的数字,所以这行的代码应该是t=s%10,还有sl=sl*100这行代码也有问题,应该是sl=sl*10;下面是我编译通过的代码:#include #include main( ) { long s, t, sl=10; printf(...

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