C语言编写一个函数,利用参数传入一个3位数number,找出101~number之间所有满足下列两个条件的数:程序填空,不要改变与输入输出有关的语句.编写一个函数,利用参数传入一个3位数number,找出101
来源:学生作业帮助网 编辑:六六作业网 时间:2025/01/22 18:45:28
C语言编写一个函数,利用参数传入一个3位数number,找出101~number之间所有满足下列两个条件的数:程序填空,不要改变与输入输出有关的语句.编写一个函数,利用参数传入一个3位数number,找出101
C语言编写一个函数,利用参数传入一个3位数number,找出101~number之间所有满足下列两个条件的数:
程序填空,不要改变与输入输出有关的语句.
编写一个函数,利用参数传入一个3位数number,找出101~number之间所有满足下列两个条件的数:
它是完全平方数,又有两位数字相同,如144、676等,函数返回找出这样的数据的个数.请同时编写主函数.
例:(括号内为说明)
输入
3\x09(repeat=3)
150
500
999
输出
count=2
count=6
count=8
#include
#include
int search(int n);
int main(void)
{
\x09int number,ri,repeat;
\x09scanf("%d",&repeat);
\x09for(ri=1;ri
C语言编写一个函数,利用参数传入一个3位数number,找出101~number之间所有满足下列两个条件的数:程序填空,不要改变与输入输出有关的语句.编写一个函数,利用参数传入一个3位数number,找出101
#include <stdio.h>
#include <math.h>
int search(int n);
int main(void)
{
int number, ri, repeat;
scanf("%d", &repeat);
for (ri = 1; ri <= repeat; ri++){
do{
scanf("%d", &number);
} while (number<101 || number>999);
printf("count=%d\n", search(number));
}
}
/*---------*/
int search(int n)
{
int i, k, flag1 = 0, flag2 = 0, a, b, c, count = 0;
for (i = 101; i <= n; i++) {
flag1 = 0;
flag2 = 0;
for (k = sqrt(i*1.0) - 1; k <= sqrt(i*1.0) + 1; k++) {
if (i == k*k){
flag1 = 1;
continue;
}
}
a = i % 10;
b = (i / 10) % 10;
c = i / 100;
if (a == b || b == c || a == c)
flag2 = 1;
if (flag1 == 1 && flag2 == 1)
count++;
}
return count;
}