第一次PTA作业

时间:2022-06-17 05:05:05

题目6-1拆分实数整数及小数部分

1设计思路

(1)

第一步:阅读题目要求及所给部分。

第二步:根据题意补全相应函数。

(2)流程图

2.实验代码

#include <stdio.h>

void splitfloat( float x, int *intpart, float *fracpart );

int main()
{
float x, fracpart;
int intpart; scanf("%f", &x);
splitfloat(x, &intpart, &fracpart);
printf("The integer part is %d\n", intpart);
printf("The fractional part is %g\n", fracpart); return ;
}
void splitfloat( float x, int *intpart, float *fracpart )
{*intpart=x/;
*fracpart=x-*intpart; }

git地址:https://coding.net/u/wunaidelongge/p/diyicizuoye/git/blob/master/6.1?public=true

3.本体调试过程碰到问题及解决办法

未遇到问题

https://coding.net/u/wunaidelongge/p/diyicizuoye/git/blob/master/6.1?public=true

6-2在数组中查找指定元素

1.设计思路

(1)

第一步:阅读题目要求,变量名称和程序所给部分

第二步:将缺失函数补全

(2).流程图

第一次PTA作业

2.实验代码

#include <stdio.h>
#define MAXN 10 int search( int list[], int n, int x ); int main()
{
int i, index, n, x;
int a[MAXN]; scanf("%d", &n);
for( i = ; i < n; i++ )
scanf("%d", &a[i]);
scanf("%d", &x);
index = search( a, n, x );
if( index != - )
printf("index = %d\n", index);
else
printf("Not found\n"); return ;
}
int search(int list[], int n, int x)
{
int i;
for(i = ; i <= n; i++)
if(list[i] == x)
return i;
return -;
}

3.本体调试过程碰到问题及解决办法

6.3计算两数的和与差

1设计思路

(1)

第一步:阅读题目要求及所给部分。

第二步:根据题意进行相应的加减,补全相应函数。

(2)流程图

第一次PTA作业

2.实验代码

#include <stdio.h>

void sum_diff( float op1, float op2, float *psum, float *pdiff );

int main()
{
float a, b, sum, diff; scanf("%f %f", &a, &b);
sum_diff(a, b, &sum, &diff);
printf("The sum is %.2f\nThe diff is %.2f\n", sum, diff); return ;
}
void sum_diff(float op1,float op2,float *psum,float *pdiff)
{
*psum=op1+op2;
*pdiff=op1-op2;
}

3.本体调试过程碰到问题及解决办法

7-1 数组元素循环右移问题

1设计思路

(1)

第一步:阅读题目要求。

第二步:建立函数

(2)流程图

暂无

2.实验代码

#include<stdio.h>
int main()
{
int a[];
int j;
int n,N,M,k;
scanf("%d %d",&N,&M);
for(n=;n<N;n++)
scanf("%d",&a[n]); for(j=;j<M;j++)
{ k=a[N-];
for(n=N-;n>=;n--)
{
a[n+]=a[n];
} a[]=k;
}
for(n=;n<N;n++)
printf(n==N-?"%d":"%d ",a[n]);
return ;
}

3.本体调试过程碰到问题及解决办法