首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

关于sscanf的应用

2012-12-15 
关于sscanf的使用需要输入若干整数(正数,负数,0),输出乘积的后3位,整数中会混入大写字母我想用scanf输入在

关于sscanf的使用
需要输入若干整数(正数,负数,0),输出乘积的后3位,整数中会混入大写字母
我想用scanf输入在字符串,然后把字符串中的字母的都弄成空格
再用sscanf取出中间的数,但是好像sscanf是个输入了好多个数,结果不对
程序如下:
#include<stdio.h>
#include<string.h>
#include<ctype.h>
char s[500];
int shu[500];
int main()
{
int a,b,n=1;
scanf("%s",s);
for(a=0;a<strlen(s);a++)

if(isalpha(s[a]))s[a]=' ';

a=0;
while(sscanf(s,"%d",&shu[a++])==1);
for(b=0;b<a;b++)
n=n*shu[b]%1000;
printf("%d",n);
return 0;
}
前面去字母的经测试没问题,
我想可能是sscanf的问题,sscanf是遇到EOF结束么?
求指教

热点排行
Bad Request.