填空題
請(qǐng)補(bǔ)充fun函數(shù),該函數(shù)的功能是:按’0’到’9’統(tǒng)計(jì)一個(gè)字符串中的奇數(shù)數(shù)字字符各自出現(xiàn)的次數(shù),結(jié)果保存在數(shù)組num中。注意:不能使用字符串庫(kù)函數(shù)。
例如:輸入:”x=1123.456+0.909*bc”,結(jié)果為:1=2,3=1,5=1,7=0,9=2.
請(qǐng)勿改動(dòng)主函數(shù)main和其他函數(shù)中的任何內(nèi)容,僅在fun函數(shù)的橫線上填入所編寫(xiě)的若干表達(dá)或語(yǔ)句。#include
#include
#define N 1000
void fun(char *tt, int num[])
{
int i, j;
int bb[10];
char *p = tt;
for (i=0; i<10; i++)
{
num[i] = 0;
bb[i] = 0;
} 來(lái)源:11ub.com
while (*p)
{
if (*p>='0' && *p<='9')
bb[*p-‘0’]++;
p++;
}
for (i=1, j=0; i<10; i=i+2, j++)
num[j]=bb[i];
}
main()
{
char str[N];
int num[10], k;
printf("\nPlease enter a char string:");
gets(str);
printf("\n*******The original string******\n");
puts(str);
fun(str, num);
printf("\n*******The number of letter******\n");
for (k=0; k<5; k++)
{
printf("\n");
printf("%d= %d ", 2*k+1, num[k]);
}
printf("\n");
}
參考答案:
*p或*p!=0或0!=*p
bb[*p-’0’]++或bb[*p-‘0’]+=1
num[j]=bb[i]
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |