首页 > 学院 > 开发设计 > 正文

字符数组1

2019-11-08 02:18:40
字体:
来源:转载
供稿:网友

找出所有形如abc*de(三位数乘以两位数)的算式,使得在完整的竖式(乘法过程)中,所有数字属于一个特定的数字集合。 输入数字集合(相邻数字之间没有空格),输出所有竖式。 每个竖式前都有编号,最后输出解的总数。

分析: 1.尝试所有的abc*de,判断是否满足条件。 2.应该充分里面string里面自带函数 strlen:返回字符串实际长度(’/0’结束) strchr(const char *s,char c):查找字符串s中首次出现字符c的位置,返回c开头的字符串,不存在返回NULL strichr:功能同上,但是不区分大小写 strcpy(a,b):赋值 a=b strcat(a,b):连接 a=a+b strcmp(str1,str2):比较 若str1 == str2,返回0。str1小于str2,返回负数,str1大于str2,返回正数

这里写图片描述

#include<cstdio>#include<string.h>int main(){ PRintf("%s", strchr("abcdef", 'c')); int i, ok, abc, de, x, y, z, count = 0; char s[20], buf[99]; scanf("%s", s); for (abc = 111; abc <= 999; abc++) for (de = 11; de <= 99; de++) { x = abc*(de % 10); y = abc*(de / 10); z = abc*de; sprintf(buf, "%d%d%d%d%d", abc, de, x, y, z); ok = 1; for (i = 0; i < strlen(buf); i++) if ( strchr(s, buf[i]) == NULL) ok = 0; if (ok) { printf("<%d>/n", ++count); printf("%5d/nX%4d/n-----/n%5d/n%4d/n-----/n%5d/n/n", abc, de, x, y, z); } } printf("The number of solutions = %d/n", count); return 0;}
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表