#include <cstdio>
#include <cctype>
#include <cstring>
int main(){
char ch = EOF;
char in[500];
char buf[500];
memset(in, '\0', sizeof(in));
memset(buf, '\0', sizeof(buf));
int i = 0;
while ((ch = getchar()) != '\n' && ch != EOF){
in[i++] = ch;
if (i >= 500){
printf("overflow!\n");
return 1;
}
}
in[i] = '\0';
char *tmp = in;
int num = 0;
int product = 1;
while (*tmp != '\0'){
if (isdigit(*tmp)){
num = num * 10 + (*tmp - '0');
}
else if (isalpha(*tmp) || *tmp == ' '){
if (num != 0){
product *= num;
product %= 1000;
num = 0;
}
}
++tmp;
}
if (num != 0){
product *= num;
product %= 1000;
num = 0;
}
printf("product=%d\n", product);
return 0;
}算法竞赛入门经典 习题3-3乘积的末3位
最新推荐文章于 2024-10-28 14:12:21 发布
本文介绍了一个C语言程序,该程序从标准输入读取一行字符,并计算其中所有数字字符的乘积,结果以模1000的形式输出。程序使用了基本的字符串处理和条件判断来实现这一功能。
3790

被折叠的 条评论
为什么被折叠?



