目录
1.求1000以内所有的质数。
2.有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?
3.猴子吃桃问题
4.判断最大值
1.求1000以内所有的质数。
质数:只能够1和它本身整除
#include <stdio.h>
int main(int argc, const char *argv[])
{
int i , j;
for(i=2;i<1000;i++){
for(j=2;j<i;j++){
if(i%j==0)break;
}
if(i==j){
printf("%d\t\t",i);
}
}
printf("\n");
return 0;
}
2.有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?
#include <stdio.h>
int main(int argc, const char *argv[]){
int i,j,k,count=0;
for(i=1;i<5;i++){
for(j=1;j<5;j++){
for (k=1;k<5;k++){
if(i!=k&&i!=j&&j!=k)
count++;
printf("%d%d%d\t",i,j,k);
}
}
}
printf("\n一共有%d个\n",count);
return 0;
}
3.猴子吃桃问题
猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个。第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第10天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少。结果:peach=1534
#include <stdio.h>
int main(int argc, const char *argv[])
{
int n=1;
for(int i=0;i<9;i++){
n=(n+1)*2;
}
printf("%d\n",n);
return 0;
}
4.判断最大值
定义一个无符号的整型数组,求数组中的最大值。
思路:int a1=10,a2=20,a3=5;两两相比,求最大值
#include <stdio.h>
int main(int argc, const char *argv[])
{
int max=0;
unsigned int arr[10];
printf("请输入10个正整形数据:\n");
for(int i=0;i<=9;i++){
scanf("%u",&arr[i]);
}
for(int i=0 ; i<=9;i++){
if(max<arr[i]){
max=arr[i];
}
}
printf("最大值是:%d\n",max);
return 0;
}