2018上c语言第三次作业

一、例程调试(20分)
调试下面2个例程,各位同学调试用自己的学号模3(即除以3取余数)加1序号及该序号乘以2的题。写明调试过程,如错误现象(如给定输入数据,但输出未实现预计功能),编译错误(截小图)提示等,写明调试修改过程(10分); 说明:有可能没有错误提示,但未达到预计功能。题目来源为“ C语言程序设计实验与习题指导(第3版)调试源程序”中error07_1~6;利用Autoflowchart软件查看程序的流程图,将流程图导成word格式,加入必要的文字说明,并说明该程序的功能(10分)
修改 将break换成continue,在for语句第二次加括号。

include

int main(void)
{
int i, x, n;
int a[10];

printf("输入数组元素的个数:");
scanf("%d", &n);
printf("输入数组%d个元素:", n);
for(i = 0; i < n; i++)
    scanf("%d", a[i]);
printf( "输入x:" );   
scanf("%d", &x);
for(i = 0; i < n; i++) 
   {

if(a[i] != x) continue;
if(i != n)
printf( "没有找到与%d相等的元素!\n", x);
else
printf( "和%d相同的数组元素是a[%d] = %d\n", x, i, a[i]);
}

return 0;

}





5.1读入若干整数,找出最大值,最小值及位于数组的位置;

include

int main()
{
int arr[10] = {0};
int i = 0;
int max = 0;
int min = 0;
printf("请输入10个整数:");
for (i = 0; i < sizeof(arr)/ sizeof(arr[0]); i++)
{
scanf("%d",&arr[i]);
}
max = arr[0];
for (i = 0; i < sizeof(arr) / sizeof(arr[0]); i++)
{
if (max < arr[i])
{
max = arr[i];
}
}
min = arr[0];
for (i = 0; i < sizeof(arr) / sizeof(arr[0]); i++)
{
if (min > arr[i])
{
min = arr[i];
}
}
printf("max=%d\n", max);
printf("min=%d\n", min);
return 0;
}

5.2 读入若干整数,输入要查找的整数X,输出X第一个位置或not found;

include

int main()
{int i,x,a[10];
for(i=0;i<10;i++)
scanf("%d",&a[i]);
scanf("%d",&x);
for(i=0;i<10;i++)
if(a[i]==x)break;
if(i<10)printf("a[%d]=%d\n",i,x);
else printf("Not find %d!\n",x);
return 0;
}

5.3交换排序(降序)

include

int main()
{
int i,j,min,temp,a[11];
printf("enter data:\n");
for(i=1;i<=10;i++)
{
scanf("%d",&a[i]);
}
printf("\n");
for(i=1;i<=9;i++)
{
min=i;
for(j=i+1;j<=10;j++)
{
if(a[min]<a[j])
{
min=j;
}
}
temp=a[i];
a[i]=a[min];
a[min]=temp;

}
printf("\nThe sorted numbers:\n");
for(i=1;i<=10;i++)
printf("%5d",a[i]);
printf("\n");
return 0;
}

5.4选择排序(升序)

include

int main()
{
int i,j,min,temp,a[11];
printf("enter data:\n");
for(i=1;i<=10;i++)
{
scanf("%d",&a[i]);
}
printf("\n");
for(i=1;i<=9;i++)
{
min=i;
for(j=i+1;j<=10;j++)
{
if(a[min]>a[j])
{
min=j;
}
}
temp=a[i];
a[i]=a[min];
a[min]=temp;

}
printf("\nThe sorted numbers:\n");
for(i=1;i<=10;i++)
printf("%5d",a[i]);
printf("\n");
return 0;
}

5.5 二维数组编程;读入一个整形二维数组,找出最小值及位置,求各行数据的和 ;

include

int main()
{
int m;
int n;
scanf("%d %d",&m,&n);
int arr[m][n];
int a,b;
for(a=0;a<m;a++)
{
for(b=0;b<n;b++)
{
scanf("%d",&arr[a][b]);
}

}
int sum = 0;
for(a=0;a<m;a++)
{
for(b=0;b<n;b++)
{
sum=sum+arr[a][b];
}
printf("%d\n",sum);
sum=0;
}

return 0;
}
5.6 读入一个字符串,直到遇到#为止,将字符中大小字符转为小写,小写字符转为大写。
不会。

六、持续改进学习方法、措施落实情况(10分)
6.1结合上次博客作业,针对自己所提出的各种学习中遇到的困难解决方法,总结一下,自己是否落实之前的计划。没有落实的原因是什么。
上次因为学校活动过多,导致无法完成,这一周以来受到运动会影响,效率比较低,但是在运动会结束后,每天练习量比以前有了提升。
6.2记录近一周的课下编码情况,(实事求事)
具体内容为包括但不限于日期、每天编码时间(分钟)、每天代码行数,要求插入表,并统制拆线图。

6.3下一步的学习改进措施与计划
按条目写明具体可行的措施及可验证的检测方法。
复习 措施:做PTA上合集的题 检测办法:于18周前查看PTA完成情况。

猜你喜欢

转载自www.cnblogs.com/4534chen/p/9113819.html