C++经典习题--初学者必学的实验题
s1=string1;s2=string2; //记录移动当前指针位置 while(*string2==*string1&&*string1!='\\0') //判断是否含有完整子串 { string2++; //移动指针到下一位 string1++; //移动指针到下一位 } if(*string1=='\\0') //含有完整子串 break; //跳出 string1=s1;string2=s2; //不含完整子串指针复位继续循环 string2++; i++; } if(*string1=='\\0') return i; //含有完整子串返回子串位置 else return -1; }
int main() { char*p1,*p2;int p; char string1[100],string2[100]; cout<<\请输入字符串:\ gets(string2); cout<<\请输入要查找的子串:\ gets(string1); p1=string1; p2=string2; p=findstr(p1,p2); if(p==-1) cout<<\该字符串不含所查找的子串!\ else cout<<\该子串出现在第\位。\ return 0; }
24.交换两个整数。用指针 #include
void swap(int *xp,int *yp) { int tmp=*xp; *xp=*yp; *yp=tmp; }
26
Making by q649568163
C++经典习题--初学者必学的实验题
int main() {
int a=2,b=3;
cout<<\ swap(&a,&b);
cout<<\ }
25.计算1+11+111...的和 #include void main() { int a=1,x,sum=0; cout<<\请输入所需计算的位数x\ cin>>x; cout<<\ } 26.数组求斐波那契第n项和前n项和 使用数组来求斐波那契数列的第n项和前n项和 #include int a[100]; a[0]=0; a[1]=1; cout<<\请输入项数:\ int i,n; cin>>n; for(i=2;i 27 Making by q649568163 C++经典习题--初学者必学的实验题 { a[i]=a[i-1]+a[i-2]; cout< cout<<\求前n项和:\ int x,j; int sum[100]; sum[0]=0; sum[1]=1; cin>>x; for(j=2;j a[j]=a[j-1]+a[j-2]; sum[j]=sum[j-1]+a[j]; cout< 27.指针冒泡法排序 #include void bubble_up(int a[],int n) { int *p; p=a; for(int i=0;i int tmp=*(p+j); *(p+j)=*(p+j+1); *(p+j+1)=tmp; } } void main() { int b[10]={34,6876,4323,79,9,1321,567,678,123,65}; cout<<\排序前数组b的顺序是:\ for(int i=0;i<10;i++) cout< cout<<\排序后数组b的顺序是:\ for(int j=0;j<10;j++) 28 Making by q649568163 C++经典习题--初学者必学的实验题 cout< 28.编写对整型数组进行排序的函数 编写一个用于对整型数组进行排序的函数 #include void bubble_up(int a[],int count) { for(int i=0;i int main() { int i; int array[10]= {1,2,4,3,12,34,56,67,23,9}; cout<<\原数组是:\ for(i=0;i<10;i++) cout< 29 Making by q649568163