c程序 帮忙改个错

来源:百度知道 编辑:UC知道 时间:2024/05/24 02:58:55
#include<stdio.h>
main()
{
int m ,*p,r,i,j,k,temp,count;
printf("shu ru ge shu :");
scanf("%d",&r);
printf("shu ru shu :");
for(i=0;i<r;i++)
{
scanf("%d",(p+i));
}
count=0;
for(j=0;j<r-1;j++)
{
for(k=0;k<r-j;k++)
for(i=0;i<r-j;i++)
{
if(*(p+i+j)>*(p+i+j+1))
{
temp=*(p+j+i);
*(p+j+i)=*(p+i+j+1);
*(p+i+j+1)=temp;
}
}
*(p+j+1)=*(p+j)+*(p+j+1);
count=count+*(p+j+1);
}
printf("%d",count);
return 0;
}
我想知道count为什么不能打印出来啊?
谢谢各位
#include<stdio.h>
main()
{
int m ,*p,r,i,j,k,temp,count;
printf("shu ru ge shu :");
sca

#include<stdio.h>
#include <malloc.h>
int main()
{
int *p=NULL,r,i,j,k,temp,count;
printf("shu ru ge shu :");
scanf("%d",&r);

if (r>0)
{
p=malloc(r*sizeof(int));
}
else return -1;
if (p==NULL)
{
return -1;
}
printf("shu ru shu :");
for(i=0;i<r;i++)
{
scanf("%d",(p+i));
}
count=0;
for(j=0;j<r-1;j++)
{
for(k=0;k<r-j;k++)
for(i=0;i<r-j;i++)
{
if(*(p+i+j)>*(p+i+j+1))
{
temp=*(p+j+i);
*(p+j+i)=*(p+i+j+1);
*(p+i+j+1)=temp;
}
}
*(p+j+1)=*(p+j)+*(p+j+1);
count=count+*(p+j+1);
}
free(p);
printf("%d",count);
return 0;
}

太乱了。麻烦您把题意写清楚吧,补充好了再看
还有,你这个
for(i=0;i<r;i++)
{
scanf("