有些纠结~~不懂的怎样转换……求解、、、
#include<stdio.h>#include<string.h>
void in(int m,int n,double a[150][150])
{
int i,j;
for(i=0;i<m;i++)
for(j=0;j<n;j++)
scanf("%lf",&a[i][j]);
}
int main()
{
int i,j,m,n,co,id=1,co1;
double a[150][150];
char b[2]={'+','-'};
while(scanf("%d%d",&m,&n)==2&&m!=0&&n!=0)
{
// memset(a,0,sizeof(a));
co=0;co1=0;
in(m,n,a);
for(i=0;i<m;i++)
{
for(j=0;j<n;j++)
{
if(a[i][j]==0)
{
a[i][j]=48;
continue;
}
if(a[i][j]>0)
{
co++;
a[i][j]=43;
}
if(a[i][j]<0)
{
co1++;
a[i][j]=45;
}
}
}
printf("Case %d:有%d个正数,%d个负数.\n",id++,co,co1);
for(i=0;i<m;i++)
{
for(j=0;j<n;j++)
{
printf("%c ",a[i][j]);//这样不能直接输出吗??
}
printf("\n");
}
}
return 0;
}
想问下:如何把a[i][j]>0 转换成 + ???