算法竞赛入门经典 习题3-3乘积的末3位

来源:互联网 发布:黑马校对软件下载 编辑:程序博客网 时间:2024/04/29 17:07
#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;}

0 0