3、有 1、2、3、4个数字,能组成多少互不相同且无重复的三位? 都是多少?
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main(int argc, const char *argv[])
{
int i,j,k,s=0;
for(i=1;i<=4;i++)
{
for(j=1;j<=4;j++)
{
for(k=1;k<=4;k++)
{
if(i!=j&&i!=k&&j!=k){
printf("%d%d%d\n",i,j,k);
s++;}
}
}
}
printf("能组成%d个不重复的三位数\n",s);
return 0;
}
4、终端输入一个数,输出他的二进制(二进制输出不能使用格式符)
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main(int argc, const char *argv[])
{
int x;
int sum = 0,n = 1,b=0;
printf("请输入需要转化的十进制数:");
scanf("%d",&x);
for(;x!=0;)
{
b=x%2;
x=x/2;
sum=b*n+sum;
n*=10;
if(x==0)
{
break;
}
}
printf("%d\n",sum);
return 0;
}
5、定义一个一维整形数组,使用for循环实现数组中元素的输入输出
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main(int argc, const char *argv[])
{
int i = 0;
int x ;
int arr[x];
int n=0;
scanf("%d",&x);
for(int i=0;;i++)
{
scanf("%d,",&arr[i]);
n++;
if(n==x)
break;
}
for(int j=0;j<x;j++)
{
printf("%d ",arr[j]);
}
putchar(10);
return 0;
}
6、终端输入两个数,求这两个数的最小公倍数和最大公约数
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main(int argc, const char *argv[])
{
int x,y;
int i,j;
printf("请输入两个值:");
scanf("%d%d",&x,&y);
for(j=x;j>=1;j--)
{
if(x%j==0)
{
if(y%j==0)
{
printf("最大公约数为:%d\n",j);
break;
}
}
}
printf("最小公倍数为:%d\n",x*y/j);
return 0;
}
- 百钱买百鸡问题:我国古代数学家张丘建在《算经》一书中曾提出过著名的 “百钱买百鸡” 问题,该问题叙述如下:鸡翁一,值钱五;鸡母一,值钱三;鸡雏三,值钱一;百钱买百鸡,则翁、母、雏各几何?
#include <stdio.h> #include <stdlib.h> #include <string.h> int main(int argc, const char *argv[]) { int i,j,k,x=0; for(i=0;i<=20;i++) { for(j=0;j<=34;j++) { for(k=3;k<=100;k+=3) { if(5*i+3*j+(k/3)==100&&i+j+k==100) { x++; printf("公鸡有%d只,母鸡有%d只,小鸡有%d只\n",i,j,k); } } } } printf("有%d种买法\n",x); return 0; }