第一题
#include "stdio.h" int main() { unsigned int num[]={10,20,5}; int tmp,i,j; for (i=0;i<sizeof(num)/sizeof(num[0]);i++) { for(j=0;j<sizeof(num)/sizeof(num[0])-1-i;j++) { if(num[j]<num[j+1]) { tmp=num[j]; num[j]=num[j+1]; num[j+1]=tmp; } } } for (i=0;i<sizeof(num)/sizeof(num[0])-1;i++) { printf("%d > ",num[i]); } printf("%d\n",num[sizeof(num)/sizeof(num[0])-1]); return 0; }
第二题
#include <stdio.h> int main() { int i,j,flag; for(i=2;i<=1000;i++) { flag=1; for(j=2;j<=(i/2);j++) { if(i%j==0) { flag=0; break; } } if(flag==1) { printf("%d\n",i); } } return 0; }
第三题
#include <stdio.h> int main() { int count=0; for(int i=1;i<=4;i++) { for(int j=1;j<=4;j++) { for(int k=1;k<=4;k++) { if(i!=j && i!=k && j!=k) { printf("%d%d%d\n",i,j,k); count++; } } } } printf("一共有%d个数字\n",count); return 0; }
第四题
#include "stdio.h" int main(int argc, char *argv[]) { int count = 0; for (int i=200; i<=2000; i++) { count = i; for(int j=0; j<9; j++) { count = (count/2)-1; } if(count==1) { printf("%d\n", i); break; } } return 0; }