Live2D

实验四 指针

实验四 指针

#include<stdio.h>
#include<string.h>
int my_strlen(char str[]);
int my_strcmp(char str1[],char str2[]);
void swap(int *p1,int *p2) ; 
void sortnum(int *a,int n);
void sortstr(char s[][30],int n);
void zhuanzhi(int a[][4]) ;
double f(double x);
double dingjifen(double a,double b);

int main()
{
	int i,j,n; 
	int q[10]={5,6,4,2,1,3,9,8,7,22};
//	sortnum(q,10);
	char s[][30]={
	{"beijing"},
	{"shenzhen"},
	{"nanjing"},
	{"dalian"},
	{"shanghai"},
	{"qingdao"} }; 
//	sortstr(s,6); 
	int a[4][4]={
	{1,2,3,4},
	{5,6,7,8},
	{9,10,11,12},
	{13,14,15,16} } ;
	zhuanzhi(a);n=4;
//	for(i=0;i<n;i++)
//	{for(j=0;j<n;j++)
printf("%lf",dingjifen(1,2));
//	printf("\n");}
	 
//	printf("%d   %d\n",my_strlen(str),strlen(str)); 
//	printf("%d\n",my_strcmp(str,"abcd")); 
	return 0;
}

void swap(int *p1,int *p2) //交换a,b的值
{
	int t;
	t=*p1;
	*p1=*p2;
	*p2=t;
 } 

int my_strlen(char str[])  //求字符串长度 
{
	int i=0;
	while(str[i]!='\0')
	{
		i++;
	}
	return i;
 } 
 
int my_strcmp(char str1[],char str2[]) //字符串的比较 
{
	int n=0;
	while(str1[n]==str2[n]&&str1[n]!='\0'&&str2[n]!='\0')n++;
	if(str1[n]>str2[n]) return 1;
	else if(str1[n]<str2[n]) return -1;
	else return 0;
} 
 
void sortnum(int *a,int n) //将n个整数排序输出(冒泡法) 
 {
 	int i,j,t;
 	for(i=0;i<n-1;i++)
 		for(j=0;j<n-1-i;j++)
 		{
 			if(*(a+j)>*(a+j+1)){
 				t=*(a+j);
 				*(a+j)=*(a+j+1);
 				*(a+j+1)=t;
			 }
		 }
	for(i=0;i<n;i++)printf("%d   ",*(a+i));
	printf("\n");
 }
  
void sortstr(char s[][30],int n) //字符串降序排列 
{
	char t[30];
	int i,j;
 	for(i=0;i<n-1;i++)
 		for(j=0;j<n-1-i;j++)
 		{
 			if(strcmp(s[j],s[j+1])<0){
 				strcpy(t,s[j]);
 				strcpy(s[j],s[j+1]);
 				strcpy(s[j+1],t);
			 }
		 }
	for(i=0;i<n;i++)
	printf("%s\n",s[i]);
 } 
  
void zhuanzhi(int a[][4]) 
{	
	int i,j,t; 
	
	for(i=0;i<4;i++)
	{
		for(j=0;j<4;j++)
		{
			if(i>j){
				t=a[j][i];
			a[j][i]=a[i][j];
			a[i][j]=t;	
			}
			
		}
	}	
} 
 
double dingjifen(double a,double b) //定积分的计算 
{
	double totle=0.,i,dx=0.1;
	for(i=a;i<=b;i=i+dx)
	{
		totle=totle+f(i)*dx;
	}
	return totle;
}
double f(double x)
{
	return x*x;
}
  
  
  
  
  
  
posted @ 2019-07-16 15:27  小小箫呀  阅读(137)  评论(0)    收藏  举报