#include<stdio.h>
#define N 6
int main(){
double arr[N];
double *par_arr=NULL;
double temp;
double * par_arr_start=arr;
double * par_arr_end=arr+N-1;
int i;
for(i=0;i<N;i++){
scanf("%lf",&arr[i]);
}
for(i=0;i<N;i++){
printf("%.4lf",arr[i]);
}
printf("-------------NULL------------\n");
par_arr=arr;
for(i=0;i<N;i++){
printf("%4lf",*(par_arr+i));
}
printf("PRIN\n");
for(i=0;i<N/2;i++){
if(par_arr_start !=par_arr_end){
temp=*par_arr_start;
*par_arr_start=*par_arr_end;
*par_arr_end=temp;
par_arr_start++;
par_arr_end--;
}
}for(i=0;i<N;i++){
printf("%lf\n",arr[i]);
}
return 0; |
使用道具 举报
不好意思,我填写错误了,主要我以后好自己翻阅、复习:lol
点评
使用道具 举报
对于C语言,我还是有很多经验的,我在编译器中运行时,我发现了十几处问题,我下面有改进过后的代码,自己对比,我先例举重要几点:
1. 程序结尾没有将上面第一个大括号“{}”封上,导致程序第一步就运行错误。
2. 代码结构性较弱,我起初看这个代码,看得头皮发麻,整个程序就像被打乱的毛线团一样。
3. 程序简单即是美。变量名取得太长且复杂,发现错误难以查找。
4. 为了使代码美观,整齐,大括号应该放在与需要使用大括号的语句开头同一列。
5. 语法问题,int main()这条代码虽然可运行,但书写时不规范的,真确写法为:int main(void) //void代表没有可获取的值。
改进后为:
#include<stdio.h>
#define N 6
int main(void)
{
double arr[N];
double *par_arr=NULL;
double temp;
double *par_arr_start=arr;
double *par_arr_end=arr+N-1;
int i;
for(i = 0; i < N; i++)
{
scanf("%lf",&arr);
}
for(i = 0; i < N; i++)
{
printf("%.4lf",arr);
}
printf("-------------NULL------------\n");
par_arr=arr;
for(i = 0; i < N; i++)
{
printf("%4lf",*(par_arr+i));
}
printf("PRIN\n");
for(i=0;i<N/2;i++)
{
if(par_arr_start !=par_arr_end)
{
temp = *par_arr_start;
*par_arr_start = *par_arr_end;
*par_arr_end = temp;
par_arr_start++;
par_arr_end--;
}
for(i = 0;i < N;i++)
{
printf("%lf\n",arr);
}
}
return 0;
}
使用道具 举报
没事没事
使用道具 举报