一、一) 语法错误。
1、 错误:
理由:c语言中以分号作为一句的结束标志。
修改:int i;
2、 错误:
理由:(可写文字)c语言中编译系统将大写和小写字母认为是两个不同的字符。
修改:printf("the output numbers are:");
3、错误:printf("%d,",a[i]);
修改:printf("%d,",a[i]);
理由:输出不用取地址。
二) 逻辑错误。
1、 错误 scanf("%d",&a[i]);
修改:scanf("%d,",a[i]);
理由:以逗号作为间隔输入。
2、 错误: for(i=0;i<=4;i++)
修改:for(i=0;i<4;i++)
理由:数组越界。
3、错误: a[i]=a[i]+i;
修改:a[i]=a[i]+i+1;
理由:对输入的第n个数+n(1<=n<=4),数组中a[i]表示第i+1个数;
三) 正确结果:二、三、
1、 从键盘输入5个2位整数,输入时以逗号作为间隔;若输入的数非2位整数则要球重新输入所有数据。
2、 用冒泡法对数据进行从小到大排列,输出提示语:“水平由小到大排序:”,并输出结果,以空格作为间隔。
3、 输出提示语:“反序输出:”,输出由大到小排列的数据(此点编程时不可重新排序),以空格作为间隔。
完整程序:#include<>
void main()
void foc(int *p2);
void sort(int *p);
int a[5],i,*p1,b=0;
printf("输入五个二位整数:");
for(i=0;i<5;i++)
scanf("%d,",a[i]);
for(i=0;i<5;i++)
while(b==1)
p1=&a[0];
foc(p1);
p1=&a[0];
printf("水平由小到大排序:");
for(i=0;i<5;i++)
printf("%d ",p1+i));
printf("");
p1=&a[0];
sort(p1);
printf("反序输出:");
for(i=0;i<5;i++)
printf("%d ",p1+i));
printf("");
void foc(int *p2)
int i,j;
int t;
for(j=0;j<4;j++)
for(i=0;i<4-j;i++)
if(*(p2+i)>*p2+i+1))
t=*(p2+i);
p2+i)=*p2+i+1);
p2+i+1)=t;
void sort(int *p)
int i,j,temp;
for(i=0;i<=2;i++)
高级语言程序设计实验九
实验项目编号 2174000409 实验项目名称 结构体程序设计。学时 2每组人数 1 实验目的 掌握结构体变量的定义及使用,综合运用结构体和数组进行程序设计,并能运用结构体数组解决实际应用问题。实验要求 对下面的实验题设计其算法并上机调试。1 有一学生情况如下表所示。编制一个c程序,用冒泡法对该学...
高级语言程序设计实验四
学时 2 每组人数 1 实验目的 掌握一维数组与二维数组的定义及其元素的引用方法 深刻体会数组与循环的关系 掌握利用一维数组和二维数组实现一些常用算法的编程技巧 进一步掌握动态调试的基本技能。实验要求 给下面的实验题设计算法并上机调试。1 将矩阵 4 5 中值 行中所有数的和 为最大的那一行元素与首...
高级语言程序设计实验七
实验项目编号 2174000406 实验项目名称 模块化程序设计 1 学时 2每组人数 1 实验目的 掌握函数的定义及其调用形式,深刻体会全局变量和局部变量 动态变量与静态变量的概念和使用方法,熟练掌握模块间数据传递的方式。实验要求 对下面的实验题设计其算法并上机调试。1 求两整数的最公约数和最小公...