c语言改错

作者&投稿:德底 (若有异议请与网页底部的电邮联系)
c语言改错~

1)数组需要赋初值
2)地址变量a不可以++
3)使用了未赋初值的地址变量p
4)不可以给地址变量p赋整型值
5)双引号形式不对
6)不可以给地址变量stu_p赋结构体值
编号为错误次序

#include /*增加头文件包含,以支持printf、putchar语句*/
#include /*增加头文件包含,以支持getch语句*/
#define M 3
#define N 4
void main(){
int x,k,j,com,col,t;
int a[][N]={12,4,156,-34,0,-2,-45,3,9,-7,4,-65};
for(k=0;k<M;k++){
for(j=0;j<N;j++) printf("%5d",a[k][j]);
printf("
");
}
putchar('
');
x=a[0][0]; /*0改为a[0][0],如果是任意数组,0有可能是最小的,不一定得到正确结果,当前数组中x可以等于0*/
com=0; col=0;
for(k=0;k<M;k++)
for(j=1;j<N;j++)
if(x>a[k][j]) { /**/
com=k; col=j; x=a[k][j];
}
for(k=0;k<N;k++){
t=a[com][k]; a[com][k]=a[M-1][k]; a[M-1][k]=t; /*M改为M-1*/
}
for(k=0;k<M;k++){
for(j=0;j<N;j++) printf("%5d",a[k][j]); /*n改为N*/
printf("
");
}
putchar('
');
getch(); /*增加getch(),以显示结果*/
}

1.个位和千位使用了相同的变量。
thousand=(int)(num-ten_thousand*10000)/1000;/*注意这里*/
hundred=(int)(num-ten_thousand*10000-thousand*1000)/100;
ten=(int)(num-ten_thousand*10000-thousand*1000-hundred*100)/10;
thousand=(int)(num-ten_thousand*10000-thousand*1000-hundred*100-ten*10);/*注意这里*/

2.程序末尾缺少一个大括号。

修改如下 :

//---------------------------------------------------------------------------

#include <stdio.h>
#include <math.h>
void main()
{
long int num;
int indiv,ten,hundred,thousand,ten_thousand,place;
printf ("请输入一个整数(0~99999):");
scanf("%ld",&num);
if (num>9999)
place=5;
else if(num>999)
place=4;
else if (num>99)
place=3;
else if(num>9)
place=2;
else place=1;
printf("位数=%d\n",place);
printf("每位数字为:");
ten_thousand=num/10000;

thousand=(int)(num-ten_thousand*10000)/1000;
hundred=(int)(num-ten_thousand*10000-thousand*1000)/100;
ten=(int)(num-ten_thousand*10000-thousand*1000-hundred*100)/10;
indiv=(int)(num-ten_thousand*10000-thousand*1000-hundred*100-ten*10); /*注意这里*/
/* 改为这样岂不更易读? indiv=num%10; */
switch(place)
{case 5:printf("%d,%d,%d,%d,%d",ten_thousand,thousand,hundred,ten,indiv);
printf("\n反序数字为:");
printf("%d%d%d%d%d\n",indiv,ten,hundred,thousand,ten_thousand);
break;
case 4:printf("%d,%d,%d,%d",thousand,hundred,ten,indiv);
printf("\n反序数字为:");
printf("%d%d%d%d\n",indiv,ten,hundred,thousand);
break;
case 3:printf("%d,%d,%d",hundred,ten,indiv);
printf("\n反序数字为:");
printf("%d%d%d\n",indiv,ten,hundred);
break;
case 2:printf("%d,%d",ten,indiv);
printf("\n反序数字为:");
printf("%d%d\n",indiv,ten);
break;
case 1:printf("%d",indiv);
printf("\n反序数字为:");
printf("%d\n",indiv);
break;
}

} /*注意这里*/

//---------------------------------------------------------------------------

#include <stdio.h>
#include <math.h>
void main()
{
long int num;
int indiv,ten,hundred,thousand,ten_thousand,place;
printf ("请输入一个整数(0~99999):");
scanf("%ld",&num);
if (num>9999)
place=5;
else if(num>999)
place=4;
else if (num>99)
place=3;
else if(num>9)
place=2;
else place=1;
printf("位数=%d\n",place);
printf("每位数字为:");
ten_thousand=num/10000;
thousand=(int)(num-ten_thousand*10000)/1000;
hundred=(int)(num-ten_thousand*10000-thousand*1000)/100;
ten=(int)(num-ten_thousand*10000-thousand*1000-hundred*100)/10;
indiv=(int)(num-ten_thousand*10000-thousand*1000-hundred*100-ten*10);//应该是indiv吧?
switch(place)
{case 5:printf("%d,%d,%d,%d,%d",ten_thousand,thousand,hundred,ten,indiv);
printf("\n反序数字为:");//p小写,你写成大写了
printf("%d,%d,%d,%d,%d\n",indiv,ten,hundred,thousand,ten_thousand);
break;
case 4:printf("%d,%d,%d,%d",thousand,hundred,ten,indiv);
printf("\n反序数字为:");//p小写,你写成大写了
printf("%d,%d,%d,%d\n",indiv,ten,hundred,thousand);
break;
case 3:printf("%d,%d,%d",hundred,ten,indiv);
printf("\n反序数字为:");//p小写,你写成大写了
printf("%d,%d,%d\n",indiv,ten,hundred);
break;
case 2:printf("%d,%d",ten,indiv);
printf("\n反序数字为:");////p小写,你写成大写了
printf("%d,%d\n",indiv,ten);
break;
case 1:printf("%d",indiv);
printf("\n反序数字为:");//p小写,你写成大写了
printf("%d\n",indiv);
break;
}
}//少这个花括号


英语改错技巧及方法
2、改主谓错误,在检查谓语动词的时态是否正确的同时,还要注意检查该动词在人称上是否与主语保持了一致。3、改指示代词,对于每一个代词都要仔细检查其所指代的内容以及在句子中所起的作用,注意代词是否和指代的内容是一一对应的。4、在改错时还要注意逻辑语言的使用,有时候一句话读起来很顺畅,但其实...

语文改错题答题技巧
语文改错题答题方法 1.语感审读法。在审读改错题过程中,从语言的感性认识上觉察语句是否有毛病,如果觉得句子别扭,就再作分析比较,从而找到语病之所在。2.筋脉梳理法。所谓筋脉梳理法,就是划分改错题句子成份法,即运用语法手段,先理出句子的主干(主语、谓语、宾语),审查句子主干是否存在搭配不当...

高考英语改错题解题技巧及万能公式
短文改错是集语法知识与语言技能为一体的综合性英语试题,旨在考查学生对语言的评价与校正的能力以及对词汇、语法和语篇三要素的把握能力。一是改前通读,强化语篇意识。在着手改错之前一定要快速阅读全文,这一步很关键,切忌拿来就改。只有站在语篇的高度上,通篇解读全文,了解短文大意,才能贯通短文改错...

高三语文改错题技巧
达到了基本要求,基本符合题意,语言也过得去,比较平一些的文章,就可以打42分。 (4)打分的程序:打分采取“综合判断,分等参照”的原则,首先应该从总体上综合打分,看它属于哪一档的文章。 (5)评分重点:评分标准中以题意、内容、语言和文体为重点。我们主张在这四项中,以内容和语言为重点。除了审题,文体也可以适当...

大班语言教案《改错》
大班语言教案《改错》1 活动目标 1、积极参与游戏,能察觉错句,提高对语言的判断能力。 2、初步学习改错句的基本方法,能够逐步将改错句的基本方法运用到游戏中去。 活动准备 1.ppt课件:改错句 幼儿园ppt课件制作 活动过程 一、了解常识性的知识 1.课件演示: 教师:小朋友,今天我带来一副图片 图片一 你们看...

英语改错题解答技巧及答题套路
短文改错的具体做题要求是:先对文章的每一行做出判断,是对还是错。如果是对的,就在该行右边的横线 上打勾;如果有错误,但是每行不会多于一个错误,则按要求去改。第二:通读全文,把握文章框架和主题。短文改错有别于单句改错,它既有一 个完整的语言环境,又有其内在自身的逻辑关系。在很多情况...

英语语法改错网站
https:\/\/www.nounplus.net\/grammarcheck\/nounplus是一个免费的语法检查网站,界面简洁流畅,并且有三种语言可供选择。将想要检查的英文复制进矩形框,即可快速找出文本中存在的语法错误,并且提供可供参考的修改后的内容。除去语法错误,nounplus也可以帮助学习者找出文本中的拼写问题,可以说是非常全面细致...

高考英语改错题答题技巧 短文改错怎么得高分
短文改错是集语法知识与语言技能为一体的综合性英语试题,旨在考查学生对语言的评价与校正的能力以及对词汇、语法和语篇三要素的把握能力。一是改前通读,强化语篇意识。在着手改错之前一定要快速阅读全文,这一步很关键,切忌拿来就改。只有站在语篇的高度上,通篇解读全文,了解短文大意,才能贯通短文改错...

c语言程序改错
\/\/程序D19.c的功能是将inBuf中字符串拆分成一个个的单词。\/\/程序说明:\/\/(1)单词之间的分隔符由串divChar,程序中定义为“; ? !, .> \/ \\”。\/\/(2)函数getStrFromBuf的功能是从Buf的开始处寻找第一个单词,将找到的单词作为一个字符串复制到Str处,divStr指明单词间的分隔符。GetStrFrom...

C语言编程改错
= 0;float s = 2.0f;for (i = 1; i <= n; i++){sum = sum + i;if (sum == 1) continue;printf("( 1 + .. %d ) + 1 = %d\\n", i, sum + 1);s = s \/ (sum + 1);printf(" %0.16f \\n", s );}return s;}int main(){fun( 10 );return 0;} ...

原阳县18742662432: C语言改错! -
匡宗辛芳: 正确代码如下:#include<stdio.h> int sum(int a,int b) { return(a+b); } main() { int x,y; scanf("%d%d",&x,&y); printf("%d\n",sum(x,y)); } 错误有:1、第一行要写#include<stdio.h>2、函数不能嵌套定义,要写在main() 之外.这里写在mian(...

原阳县18742662432: C语言 改错 初级 -
匡宗辛芳: #include <stdio.h> #include <math.h> main() {float a,b,c; double root1,root2; printf("Please input the numbers of the letter a,b and c:"); scanf("%f%f%f",&a,&b,&c); root1=(-b+(b*b-4*a*c)0.5*0.5)/2*a;\\这里不能就(^)这个符号进行乘方 root2=(-b-(b*b-4*a*c)0.5*0.5)/2*a;\\这里不能就(^)这个符号进行乘方 printf("%c\n",root1); printf("%c\n",root2); }

原阳县18742662432: C语言简单的改错 有那一些?? -
匡宗辛芳: 1.书写标识符时,忽略了大小写字母的区别.main() { int a=5; printf("%d",A); } 编译程序把a和A认为是两个不同的变量名,而显示出错信息.C认为大写字母和小写字母是两个不同的字符.习惯上,符号常量名用大写,变量名用小写表示,以...

原阳县18742662432: C语言程序改错 -
匡宗辛芳: 1:函数f的形参没有定义2:形参和实参的类型不一致3:函数f头部分就跟了一个;号 这样就和函数体分离了4:既然函数f没有返回值(void型),把函数f的返回值赋给m就没有意义 还有不明白的地方你可以写再问题补充里.

原阳县18742662432: C语言求改错 -
匡宗辛芳: #include #define Pi 3.1415926536 int main() { double A,B,C; scanf("%lf",&r); A=Pi*r*r; B=4*Pi*r*r; C=4.0/3*Pi*r*r*r; printf("A is %10lf\n",A); printf("B is %10lf\n",B); printf("C is %10lf\n",C); return 0; }

原阳县18742662432: C语言改错题
匡宗辛芳: for(i=0;i&lt;10;i++) {b=i;p=o[i]; for(w=0;w&lt;10;w++) //改为w&lt;10+i; if(p&gt;a[w]) {for(j=9+i;j&gt;=w;j--) a[j+1]=a[j];a[w]=p;break;} }for(i=0;i&lt;20;i++) printf("%d ",a[i]); }

原阳县18742662432: c语言改错 -
匡宗辛芳: #include void main() {int max,i,j,r,c; static int a[3][4]={{12,9,-10,28},{31,19,10,-3},{15,46,41,-9}}; max=a[1][1]; for(i=0;i<=2;i++) for(j=0;j<=3;j++) if(a[i][j]>max)...

原阳县18742662432: C语言程序改错
匡宗辛芳: 已调试成功:完全符合要求 #include"stdio.h" main() { int a,b,c,s,v; printf("input a,b,c:"); scanf("%d%d%d",&a,&b,&c); s=a*b; v=a*b*c; printf("a=%d,b=%d,c=%d\n",a,b,c); printf("s=%d v=%d\n",s,v); }

原阳县18742662432: C语言程序改错 -
匡宗辛芳: main中调用 input(num[],name);//注意num是数组 sort(num[],name);你的错误提醒你num没定义说明你使用num数组有问题

原阳县18742662432: C语言程序改错
匡宗辛芳: 是int main() #include<stdio.h> int main() { void swap(int &x,int &y); int a=0,b=0; scanf("%d%d",&a,&b); if(a<b) swap(a,b); printf("%d,%d\n",a,b); } void swap(int &x,int &y) { int t; t=x; x=y; y=t; } 相同效果..

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