1.写一个函数实现:
输入一个由 0 / 1 的十进制数作为 二进制数,输出十进制数
eg:
输入:10110
输出:22
tips:
/ 整数相除 结果为整数
% 取余 10 % 3 结果为 1
#include <stdio.h>
int main()
{
int num,i,sum = 0,temp ;
scanf("%d",&num);
for(i = 0 ;num !=0;i++)
{
temp = num % 2;
sum = sum + (temp << i);
num = num / 10;
}
printf("%d\n",sum);
}
2.写一个函数实现:
输入十进制数转成对应的二进制
输入:12
输出:1100
#include <stdio.h>
int main()
{
int num,temp,i,j ;
int a[128];
scanf("%d",&num);
for(i = 0;num != 0;i++)
{
temp = num % 2;
a[i] = temp;
num = num / 2;
}
for(j = i-1;j >= 0;j--)
{
printf("%d",a[j]);
}
printf("\n");
}
/*
注意:i还加了一次
*/
2.写一个程序实现:
输入一个整数,判断这个数是不是一个质数
eg:
输入:
5
输出:
5 是质数
tips:
质数只有 1 和 本身 两个因数
% 取余结果为 0 代表是 因数 如 4 % 2 --> 0 2 是 4 的因数
#include <stdio.h>
int main()
{
int num,temp,i,flag = 0 ;
//int a[128];
printf("请输入一个整数:");
scanf("%d",&num);
for(i = 2;i < num;i++)
{
if(num % i == 0) //不是素数
{
flag = 1;
break;
}
}
if(flag == 1)
{
printf("%d 不是素数",num);
}
else if(num == 2)
{
printf("%d 是素数",num);
}
else
{
printf("%d 是素数",num);
}
printf("\n");
}
/*
总结:举反例的思想
*/