#include <stdio.h>
int main()
{
char animal[][10]={"monkey","elephant","dog","sheep","pig",
"lion","tiger","puma","turtle","fox"};
int count;
int i,j;
int empty=0;
double total=0;
double rate;
count=sizeof(animal)/sizeof(animal[0]);
for(i=0;i<count;i++)
{
for(j=0;j<11;j++)
{
total++;
if(animal[i][j]='\0')
{
empty++;
}
}
}
rate=empty/total;
printf("낭비되는 기억공간의 비율 : %.2lf",rate);
scanf("%d");
}
제가 풀려는건 위와 같은 배열에서 낭비되는 기억공간의 수를 비율로 나타내는건데
어디가 문젠지 값이 0.00으로 나오네요.
배열을 순차적으로 진행하다가 \0 문자가 나오면 empty 의 숫자를 하나씩 늘려나가서
나중에는 낭비되는 공간/전체 공간으로 나누면 될 것 같은데 어디가 문제인지 모르겠네요!
기초적인 질문인 것 같지만 그래도 궁금해서 여쭤봅니다!
제가 여기까지 배우는 과정에서 어떤점에서 기본적인 학습이 부족하다는게 보이시면 맘껏 질타해주셔도 기분좋게 받아들이겠습니다.
그리고 글중에 ftz 관련된 글이 많이 올라오던데 ftz라는게 뭔지도 알려주시면 감사하겠습니다! |