C语言函数问题求助
从键盘输入一行字符,其中含有十进制整数,编写程序,找出其中的整数,并输出。要求实现一个函数getNumber,其函数原型为:
int getNumber( char s [ ], int a [ ] )
函数getNumber的功能是将字符串s中的十进制整数提取出来并存储在数组a中。
函数getNumber的返回值为提出出来的字符串的个数。
【输入形式】
一行字符,字符串的长度小于1000,其中含有的整数个数小于100。
【输出形式】
一行整数,每个整数后输出一个空格。
【样例输入】
13 November, 2016
【样例输出】
13 2016 #include <stdio.h>
#include <string.h>
getNumber(char s[] , int a[])
{
int d , e , i , k , n ;
for(d = 0 , n = strlen(s) , i = 0 ; i < n ;) {
for(e = 0 ; i < n && s >= '0' && s <= '9' ; e ++ , i ++) ;
if(e) {
a = 0 ;
for(k = i - e ; k < i ; k ++) a = a * 10+ s - '0' ;
e = 0 ;
d ++ ;
} else {
i ++ ;
}
}
return d ;
}
main(void)
{
char s ;
int a , d , k ;
fgets(s , 1024 , stdin) ;
s = '\0' ;
d = getNumber(s , a) ;
if(d) {
for(k = 0 ; k < d ; k ++) {
if(! (k % 5)) {
if(k) printf("\n") ;
} else {
printf(" ") ;
}
printf("%d" , a) ;
}
printf("\n") ;
}
return 0 ;
}
编译、运行实况:
C:\Bin>g++ -o d d.c
C:\Bin>d
13 November, 2016
13 2016
C:\Bin>
页:
[1]