问答题 下列给定程序中,函数fun()的功能是:统计substr所指的字符串在str所指的字符串中出现的次数。例如,若字符串为aaas 1kaaas,子字符串为as,则应输出2。请改正程序中的错误,使它能得出正确的结果。注意:不要改动main()函数,不得增行或删行,也不得更改程序的结构!试题程序:#include<stdio.h>int fun(char*str, char*substr){ int i, j, k, num=0; //****found****for(i=0, str[i], i++)for(j=i, k=0; substr[k]==str[j];k++, j++)//****found****If(substr[k+1]=="\0"){ num++;break;}return nnm;}void main(){char str[80], substr[80]; printf("Input a string:"); gets(str);printf("Input a substring:"); gets (substr);printf("%d\n", fun(str, substr)); }
填空题 请补充fun()函数,fun()函数的功能是求n的阶乘。注意:部分源程序给出如下。请勿改动main()函数和其他函数中的任何内容,仅在fun()函数的横线上填入所编写的若干表达式或语句。试题程序:#include<stdio.h>long fun(int n){if(______)return(n*fun(______));return ______;}void main(){printf("10!=%1d\n", fun(10)); }