目录
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;
}