נשלח בתאריך: 04 March 2007 בשעה 15:39 | | IP רשוּם
|
|
|
|
יש לי שלושה תוכניות אם התשובות שלהם ואני לא יודע איך הם עובדות אם משהו יכול להסביר לי תודה מקרב לב..
1.מה תדפיס התוכנית הבאה אם הקלט הוא 5?
היא תדפיס משולש ABCDE
ABCD
ABC
AB
A
השאלה שלי למה ?!?!
void xxx(int n){
int k;
while(n){
k=0;
while(k<n)
putchar('A' + k++);
putchar('\n');
n--;
}
}
main()
{
int x;
scanf("%d",&x);
xxx(x);
return 0;
}
2.
void GoodBye(char **s, char **t){
char *r=*s;
*s=*t;
*t=r;
}
void Hello(char **a, char **b){
if(strcmp(*a,*b)<0)
GoodBye(&*a,&*b);
}
main(){
char *x=(char *)malloc(100*sizeof(char));
char *y="dog";
strcpy(x,"cat");
Hello(&x, &y);
printf("%s %s\n", x,y);
return 0;
}
התוכנית תדפיס dog cat אבל השאלה שלי למה ?!?
3.
char what(char *w)
{
if(*(w+1)==0)
return *w;
return what(w+1);
}
main(){
char *a="toad";
char *b="kangooroo";
char *c="slug";
printf("%c%c%c\n", what(a),what(b),what(c));
return 0;
}
התוכנית תדפיס dog למה? !?!
|