1、数组部分必须会编写的程序(参考答案)1、使用选择法、冒泡法对 10 个数进行排序,并输出排序前后的数列。/选择法#includevoid main()int a10=12,45,7,8,96,4,10,48,2,46,n=10,i,j,t,temp;printf(“Before sort:“);for(i=0;iaj)t=j;if(t!=i)temp=ai;ai=at;at=temp;printf(“Aftere sorted:“);for(i=0;ivoid main()int a10=12,45,7,8,96,4,10,48,2,46,n=10,I,j,t;printf(“Before s
2、ort:”);for(i=0;iaj+1) t=aj;aj=aj+1;aj+1=t;printf(“Aftere sorted:”);for(i=0;ivoid main()int a10=0,12,17,20,25,28,30; /*a0为工作单元,从 a1开始存放数据*/int x , i, j=6; /*j 为元素个数*/printf(“Enter a number: “); scanf(“%d“,a0=x;i=j; /*从最后一个单元开始*/while(aix) ai+1=ai; i-; /*将比 x 大的数往后移动一个位置*/a+i=x;j+; /*插入 x 后元素总个数增加*/fo
3、r(i=1;i#define nmax 50void main()int i,k,m,n,t,numnmax;printf(“please input the total of numbers:“);scanf(“%d“,printf(“please input the upper bound of numbers:“);scanf(“%d“,for(i=0;i#include void main()int i,j,a66;for(i=0;i#define SIZE 4void main()int aSIZESIZE=25,36,78,13,12,26,88,93,75,18,22,32,56
4、,44,36,58;int i,j,t,sum;/输出二维数组printf(“二维数组:n“);for(i=0;ivoid main()int a55=5,6,7,8,9,4,5,6,7,8,3,4,5,2,1,2,3,4,9,0,1,2,5,4,8;int i,j,col,row,Min,Max;for(i=0;iaij)Min=aij;col=j;Max=a0col;row=0;for(j=0;j#define N 5 /代表学生数#define M 5 /代表课程数void main()int scoresNM=78,89,90,76,65,86,79,98,74,95,78,67,96
5、,90,65,92,79,98,74,95,69,94,85,67,56;int i,j,sum;/输入学生成绩/*for(i=0;i#include void main() char s100;int i,j,n;printf(“输入字符串:n“);gets(s); n=strlen(s);for(i=0,j=n-1;i=j) printf(“是回文串n“);else printf(“不是回文串n“);9、编写程序实现从字符数组 s 中删除存放在 c 中的字符。#include #include void main() char s80,c;int j,k;printf(“nEnter a
6、string: “);gets(s);printf(“nEnter a character: “);c=getchar( );for(j=k=0;sj!= 0;j+)if(sj!=c)sk+=sj;sk= 0;printf(“n%s“,s);10、输入 5 个国家的名字,按字母顺序进行排列,输出排序前后的内容。#include#include #define SIZE 5void main()char aSIZE50, temp50;int i,j,t;printf(“Enter 5 country names:n“);for(i=0;i0)t=j;if(t!=i)strcpy(temp,ai
7、);strcpy(ai,at);strcpy(at,temp);printf(“Aftere sorted:n“);for(i=0;iint judgeTrangle(int a,int b,int c);void main()int a,b,c,t;printf(“输入三角形三边长:“);scanf(“%d%d%d“,t=judgeTrangle(a,b,c);switch(t)case 0:printf(“普通三角形!n“);break;case 1:printf(“等腰三角形!n“);break;case 2:printf(“等边三角形!n“);break;default:printf(
8、“不构成三角形!n“);break;/*功能:判断三角形形状返回值:-1,不够成三角形0,普通三角形1,等要三角形2,等边三角形*/int judgeTrangle(int a,int b,int c)if(a+bc else return 1;else return 0;else return -1;2、定义一个函数,用于验证哥德巴赫猜想。任何一个充分大的偶数(大于等于 6)总可以表示成两个素数之和。#include int isPrime(int n);void gdbh(int n);void main() int n;printf(“Enter a odd integer:“);sca
9、nf(“%d“,if(nint gct(int a,int b);int lcm(int a,int b);void main()int num1,num2;printf(“please input two numbers:n“);scanf(“%d %d“,printf(“%d,%d 的最大公约数是:%dn“,num1,num2,gct(num1,num2);printf(“%d,%d 的最小公倍数是:%dn“,num1,num2,lcm(num1,num2);int gct(int a,int b)int temp;while(b!=0)/*利用辗除法, 直到 b 为 0 为止*/ temp=a%b;a=b;b=temp;return a;int lcm(int a,int b)return a*b/gct(a,b);