A. 编写c语言程序 计算0~9之间的任意3个不同的数字组成的3位数共有多少种不同的组成
#include<stdio.h>
int main()
{
int count=0;//用来计数,有多少种组成
int i,j,k;
for(i=1;i<=9;i++)//i,用来表示最高位,不能为0,只能是1~9
for(j=0;j<=9;j++)//j,用来表示中间位,0~9
for(k=0;k<=9;k++)//k,用来表示最低位,0~9
{
if(i!=j&&j!=k&&i!=k)//如果3个数字都不相同,则符合条件,计数加1
{
count++;
}
}
printf("共有三位数%d个",count);
return 0;
}
清楚不?
B. c语言 统计用0到9之间的不同的数字所组成的3位数并输出这些3位数,最后再输出其个数
#include <stdio.h>
int main(void)
{
int num;
int n = 0;
for(num = 100;num < 1000;++num)
{
if(num / 100 != (num / 10) % 10 && (num / 10) % 10 != num % 10 && num / 100 != num % 10)
{
printf("%d\n",num);
n++;
}
}
printf("\n");
printf("%d",n);
return 0;
}
C. C语言:1~9九个数字不重复组成3个三位数,使其2个之和等于第三个;以A+B=C形式输出所有情况,咋编
代码文本:
#include "stdio.h"
int main(int argc,char *argv[]){
int a,b,c,u,v,w,x,y,z,r,s,t,k;
for(k=0,a=1;a<10;a++)
for(b=1;b<10;b++)
if(b!=a)
for(c=1;c<10;c++)
if(c-b && c-a)
for(u=1;u<10;u++)
if(u-c && u-b && u-a)
for(v=1;v<10;v++)
if(v-u && v-c && v-b && v-a)
for(w=1;w<10;w++)
if(w-v && w-u && w-c && w-b && w-a)
for(x=1;x<10;x++)
if(x-w && x-v && x-u && x-c && x-b && x-a)
for(y=1;y<10;y++)
if(y-x && y-w && y-v && y-u && y-c && y-b && y-a)
for(z=1;z<10;z++)
if(z-y && z-x && z-w && z-v && z-u && z-c && z-b && z-a
&& (r=a*100+b*10+c)+(s=u*100+v*10+w)==(t=x*100+y*10+z))
printf(++k%8 ? "%d+%d=%d " : "%d+%d=%d ",r,s,t);
if(k%8)
putchar(' ');
return 0;
}
D. C语言:1~9这9个数字,不重复组成3个3位数,使一个数是第一个的2倍,最后一个是第一个的3倍,咋写
这题可以用最笨的办法解决——
代码文本:
#include "stdio.h"
int main(int argc,char *argv[]){
int a,b,c,x,y,z,i,j,k;
printf("The result is as following: ");
for(a=1;a<10;a++)
for(b=1;b<10;b++)
if(b-a)
for(c=1;c<10;c++)
if(c-a && c-b)
for(x=1;x<10;x++)
if(x-a && x-b && x-c)
for(y=1;y<10;y++)
if(y-a && y-b && y-c && y-x)
for(z=1;z<10;z++)
if(z-a && z-b && z-c && z-x && z-y)
for(i=1;i<10;i++)
if(i-a && i-b && i-c && i-x && i-y && i-z)
for(j=1;j<10;j++)
if(j-a && j-b && j-c && j-x && j-y && j-z && j-i)
for(k=1;k<10;k++)
if(k-a && k-b && k-c && k-x && k-y && k-z && k-i && k-j
&& a*200+b*20+c*2==x*100+y*10+z && a*300+b*30+c*3==i*100+j*10+k)
printf(" %d%d%d %d%d%d %d%d%d ",a,b,c,x,y,z,i,j,k);
return 0;
}
E. 怎样使3个数字构成一个三位数的C语言程序
/*要用3个数字构成一个三位数,则百位数字一定不能为0,然后用 100*a+10*b+c来表示即可*/
#include <stdio.h>
void main()
{
int a,b,c;//a代表百位的数字,b代表十位的数字,c代表个位的数字
int number; //number就是最后构成的那个3位数。
/*分别输入3个数字*/
printf("请输入百位数字:");
scanf("%d",&a);
printf("请输入十位数字:");
scanf("%d",&b);
printf("请输入个位数字:");
scanf("%d",&c);
while(a==0) //要表示一个3位数,则百位数字一定不能是0.
{
printf("输入有误,请重新输入!\n");
printf("请输入百位数字:");
scanf("%d",&a);
printf("请输入十位数字:");
scanf("%d",&b);
printf("请输入个位数字:");
scanf("%d",&c);
}
number=100*a+10*b+c;
printf("构成的三位数字是:%d",number);
printf("\n");
}
F. c语言题把1,2,3,4,5,6,7,8,9组合成三个三位数,要求每个数字仅用一次,并且每个三位数均是完全平方数
C语言程序如下:
int main(){
char temp[3];
for(int i = 123;i<=987;i++){
itoa(i, temp, 10);//转换成string
if(temp[0] != temp[1] && temp[0] != temp[2] && temp[1] != temp[2]){
int a = sqrt(i);
if(a * a == i){
std::cout << i << std::endl;
}
}
}
return 0;
}
(6)c语言用不同的数构成一个三位数扩展阅读:
完全平方数性质如下:
(1)、平方数的个位数字只能是 0, 1,4,5,6,9 。
(2)、任何偶数的平方一定能被 4 整除;任何奇数的平方被 4(或 8)除余 1,即被4 除余 2 或 3 的数一定不是完全平方数。
(3)、完全平方数的个位数字是奇数时,其十位上的数字必为偶数。完全平方数的个位数字是 6 时,其十位数字必为奇数。
(4)、凡个位数字是 5 但末两位数字不是 25 的自然数不是完全平方数;末尾只有奇数个 0 的自然数不是完全平方数;个位数字是 1,4,9 而十位数字为奇数的自然数不是完全平方数。
(5)、除 1 外,一个完全平方数分解质因数后,各个质因数的指数都是偶数,如果一个数质分解后, 各个指数都为偶数, 那么它肯定是个平方数。 完全平方数的所有因数的总个数是奇数个。因数个数为奇数的自然数一定是完全平方数。
G. 在c语言中有4个不同的数字让它们组成一个3位数把所有的排位组合形式显示出来这四个数字由用户选择输入
#include"stdio.h"
voidarray(char*p,inti,intn){
intj,t;
if(i-n)
for(j=i;j<=n;j++){
t=p[i],p[i]=p[j],p[j]=t;
array(p,i+1,n);
t=p[i],p[i]=p[j],p[j]=t;
}
else
printf("%s",p+1);
}
intmain(intargc,char*argv[]){
chara[5];
printf("Pleaseenter4differentNumbers... ");
while(1){
scanf("%c%c%c%c",a,a+1,a+2,a+3);
if(a[0]-a[1]&&a[0]-a[2]&&a[0]-a[3]&&a[1]-a[2]&&a[1]-a[3]
&&a[2]-a[3]&&a[0]>'0'&&a[0]<='9'&&a[1]>'0'
&&a[1]<='9'&&a[2]>'0'&&a[2]<='9'&&a[3]>'0'
&&a[3]<='9')
break;
printf("Inputerror,redo:");
fflush(stdin);
}
a[4]='