1: /*编写程序,用筛选法求100 之内的素数。
*/ #include <>void main (){int i,j;for (i=2; i<100; i++){for (j=2; j<i; j++){if (i%j== 0)break;}if (j == i)printf("%d\t", i);}}2/*输入一整数,并能逐位正序或反序输出。
*/#include <>void main(){int num,a,i=0;printf("输入一个数字\n");scanf("%d",&num);printf("正序输出则输入1 反序输出输入0\n"); scanf("%d",&a);switch(a){case 1:printf("%d",num); break;case 0:while(0!=num){i=i*10+num%10;num=num/10;}printf("%d",i);break;default:printf("请输入0 和1!!\n");break;}}3/*对于一个4X4 矩阵逆时针旋转90 度*/#include <>void main(){int a[4][4],i,j,b[4][4];for(i=0;i<4;i++)for(j=0;j<4;j++)scanf("%d",&a[i][j]);for(i=0;i<4;i++)for(j=0;j<4;j++){b[3-j][i]=a[i][j];}printf("逆时针旋转90 度后:\n");for(i=0;i<4;i++){for(j=0;j<4;j++){printf("%d ",b[i][j]);}printf("\n");}}4: /*将一个数组中的数据奇数放到前面,偶数放到后面。
*/ #include <>void main (){int a[9],b[9],i,j=0,m=0;for(i=0;i<9;i++)scanf("%d",&a[i]);for(i=0;i<9;i++){if(a[i]%2!=0){b[j]=a[i];j++;}else{b[8-m]=a[i];m++;}}printf("%d",b[i]);}5: /*输入一个4X4 的矩阵,求四个边上元素的和。
*/#include <>void main (){int i,j,a[4][4],sum;printf("输入一个4 阶方阵:\n");for (i=0;i<4;i++)for (j=0;j<4;j++)scanf("%d",&a[i][j]);sum=a[0][0]+a[0][3]+a[3][0]+a[3][3];printf("四个边上元素的和为%d\n",sum);}6:/*输入9 个10 以内的自然数,将它们组成两个整数,求如何组合得到两个数的成绩最大或最小。
*/#include <>#include <>void main (){int j,k;int i;int t;int a=0,b=0;int flag=1;int num[9];int max,max_a,max_b;int min,min_a,min_b;printf("输入9 个10 以内的自然数:");for(j=0;j<9;j++)scanf("%d",&num[j]);for(j=0;j<8;j++)for(k=0;k<8-j;k++)if(num[k]>num[k+1]){t=num[k+1];num[k+1]=num[k];num[k]=t;}for(i=1;i<511;i++){{if((i&(int)pow,j))==0)a=a*10+num[j];elseb=b*10+num[j]; }if(flag){max=a*b;max_a=a;max_b=b;flag=0;}if(max<a*b){max=a*b;max_a=a;max_b=b;}a=0;b=0;}flag=1;for(j=0;j<8;j++)for(k=0;k<8-j;k++)if(num[k]<num[k+1]){t=num[k+1];num[k+1]=num[k]; num[k]=t;}for(i=1;i<511;i++){for(j=8;j>=0;j--){if((i&(int)pow,j))==0)a=a*10+num[j];elseb=b*10+num[j]; }if(flag){min=a*b;min_a=a;min_b=b;flag=0;}if(min>a*b){min=a*b;min_a=a;min_b=b;}a=0;b=0;}printf("最小的数为%d x %d = %d\n",min_a,min_b,min);printf("最大的数为%d x %d = %d\n",max_a,max_b,max);}7: /*输入一个数组,输出它的区间范围,例如输入1,2,3,4,5,6,7,8,20,21,22,23,输出1-8,20-23。
*/#include <>void main ()#define M 5{int a[M],i,j,t,m,k;for(i=0;i<M;i++)scanf("%d",&a[i]);/* 把数组从小到大排列*/for(i=0;i<M-1;i++){for(j=0;j<M-1-i;j++){if(a[j]>a[j+1]){t=a[j+1];a[j+1]=a[j];a[j]=t;}}}j=0;for(i=0;i<M;i++){while(a[j]+1==a[j+1]){j++;}if(j-i!=0){printf("%d-%d\n",a[i],a[j]);i=j;j++;}if(j-i==0){printf("%d\n",a[i]);i=j;j++;}}}8:/*输入一个区间范围,输出数组,例如输入1-8,20-23,输出1,2,3,4,5,6,7,8,20,21,22,23。
*/#include<>void main(){int a, c;char b, d;int i;printf("输入区间以'.'结束以','分隔,例如1-8,22-30:");do{scanf("%d%c%d%c", &a, &b, &c, &d);for (i = a; i <= c; i++)printf("%d ", i);}while (d != '.');}10: /*输入一篇文章,该文章小于1000 字符,统计单词的个数,单词是连续的大小写字母组成*/#include <>void main(){char text[1000];int count=0,i=0;printf("输入一段文章:");gets(text);while(text[i]!=0){if( (text[i]>='a'&&text[i]<='z') ||(text[i]>='A'&&text[i]<='Z') ){i++;continue;}else{i++;count++;}}printf ("有%d 个单词",count+1)}11:/*输入一片文章,该文章小于1000 字符,对文中内容进行加密,加密方法是A->Z,B->Z…Z->A,a->z…z->a。
*/#include <>void main (){char i,sum=0,text[1000];printf("请输入一段文字:\n");gets(text);for(i=0;text[i]!=0;i++){if(text[i]>=65&&text[i]<=90)text[i]=155-text[i];if(text[i]>=97&&text[i]<=122)text[i]=219-text[i];}puts(text);}12: /* 编写一个程序,判断输入的数字是否在指定范围内,范围也由用户输入,例如“100-100000,220000,250000,300000-600000”。
*/#include <>void main (){int a,b,c;printf("请输入:下限-上限,需要判断的数\n");scanf("%d-%d,%d",&a,&b,&c);if (c<=b&&c>=a)printf("%d 在范围内",c);elseprintf("%d 不在范围内",c);}13:/*编写一个程序,输入一篇文章,该文章小于1000 字符,从中将指定字符串换成另外一个。
*/#include <>void main (){char i,a,b,text[1000];printf("请输入需要被替换的字符-替换后的字符\n");scanf("%c-%c",&a,&b);printf("请输入一段文字\n");getchar();gets(text);for(i=0;text[i]!=0;i++)if(text[i]=='a')text[i]='b';puts(text);}14:/*读入一个字符串,判断它是否是回文,所谓回文即正序和逆序内容相同的字符串。