作业8
来源:互联网 发布:淘宝hd 5.0.1 ios 编辑:程序博客网 时间:2024/04/29 13:32
实验作业
1.调试分析课本每一个例题,有可能的话更改成2-3个方法的新程序;
2.编程实现课本每一个编程习题。
3. 有n个人围成一个圆圈,从第一个人开始报数,从1到3循环,凡是报3的退出圈子,问最后退出圈子的人是原来的几号。
4.一个班有5个学生,每一个学生有几门成绩(到底是几门自已定,或3或4或5或6),定义函数来完成下面功能:
计算第2门课成的平均分;
找出有2门以上成绩不及格的学生,并输出其学号和全部课程成绩;
(3)
(9)
(15)
(20)
(21)
(22)
(23)
2
(5)
1.调试分析课本每一个例题,有可能的话更改成2-3个方法的新程序;
2.编程实现课本每一个编程习题。
3. 有n个人围成一个圆圈,从第一个人开始报数,从1到3循环,凡是报3的退出圈子,问最后退出圈子的人是原来的几号。
4.一个班有5个学生,每一个学生有几门成绩(到底是几门自已定,或3或4或5或6),定义函数来完成下面功能:
计算第2门课成的平均分;
找出有2门以上成绩不及格的学生,并输出其学号和全部课程成绩;
找出平均成绩在90以上或者全部课程在85分以上的学生。
1
(1)
#include<iostream> using namespace std; int main() { int a=10; int*p; p=&a; cout<<"a= "<<a<<endl; cout<<"p= "<<p<<endl; cout<<"&a= "<<&a<<endl; cout<<"*p= "<<*p<<endl; cout<<"&p= "<<&p<<endl; cout<<endl; *p=15; cout<<"a= "<<a<<endl; cout<<"p= "<<p<<endl; cout<<"&a= "<<&a<<endl; cout<<"*p= "<<*p<<endl; cout<<"&p= "<<&p<<endl; return 0; }(2)
#include<iostream> using namespace std; int main() { int a,b; int*p=&a,*q=&b,*tp; cout<<"请输入两个数:"; cin>>a>>b; if(a<b) { tp=p;p=q;q=tp; } cout<<"初始的两个人数为:"<<a<<" "<<endl; cout<<"从大到小排序后的数为:"<<*p<<" "<<*q<<endl; return 0; }
(3)
#include<iostream> using namespace std; int main() { int a,b,temp; int*p=&a,*q=&b; cout<<"please input a and b:"; cin>>a>>b; cout<<"初始的两个数为:"<<a<<" "<<b<<endl; if(a<b) { temp=*p;*p=*q;*q=temp; } cout<<"从大到小排序后的数为:"<<*p<<" "<<*q<<endl; return 0; }(4)
#include<iostream> using namespace std; int main() { int a=10,b=10,*ptr1,*ptr2; ptr1=&a; ptr2=&b; cout<<boolalpha<<(*ptr1==*ptr2)<<endl; //上述语句实质上比较的是变量a和b的值是否相等 cout<<boolalpha<<(ptr1==ptr2)<<endl; //上述语句比较指针变量ptr1和ptr2的值是否相等 return 0; }(5)
#include<iostream> #include<iomanip> using namespace std; int main() { int a[10]; for(int i=0;i<10;i++) a[i]=2*(i+1); for(i=0;i<10;i++) cout<<setw(4)<<a[i]; cout<<endl; return 0; }(6)
#include<iostream> using namespace std; int main() { char a[]="Hello world",b[20],*p,*q; p=a,q=b; for(;*p!='\0';p++,q++) *q=*p; *q='\0'; cout<<"string1 is:"; cout<<a<<endl; cout<<"string2 is:"; cout<<b<<endl; return 0; }(7)
#include<iostream> using namespace std; int main() { char*p="student"; for(;*p!='\0';p++) cout<<p<<endl; return 0; }(8)
#include<iostream> using namespace std; int main() { char*p="student"; for(int i=0;p[i]!='\0';i++) cout<<p[i]; cout<<endl; return 0; }
(9)
#include<iostream> using namespace std; int main() { char s[50]; char*p; cout<<"please input a string:"; cin.get(s,50); p=s; for(;*p!='\0';) p++; cout<<"the length is:"<<p-s<<endl; return 0; }(10)
#include<iostream> using namespace std; int main() { int i=5,*p,**pp; p=&i; pp=&p; cout<<&i<<'\t'<<i<<endl; cout<<&p<<'\t'<<p<<'\t'<<*p<<endl; cout<<&pp<<'\t'<<pp<<'\t'<<*pp<<'\t'<<**pp<<endl; return 0; }(11)
#include<iostream> using namespace std; int main() { int a[5]={1,2,3,4,5}; int*p[5]={&a[0],&a[1],&a[2],&a[3],&a[4]}; for(int i=0;i<5;i++) cout<<*p[i]<<'\t'; cout<<endl; return 0; }(12)
#include<iostream> using namespace std; int main() { char a[]="computer system",b[]="hardware",c[]="software"; char*p[4]; p[0]=a; p[1]=b; p[2]=c; p[3]=NULL; for(int i=0;p[i]!=NULL;i++) cout<<p[i]<<endl; return 0; }(13)
#include<iostream> using namespace std; int main() { char*weekname[]={"Sunday","Monday","Tuesday","Wednesday", "Thursday","Friday","Saturday"}; int i; while(1) { cout<<"please input week No.:"; cin>>i; if(i<0||i>6) break; cout<<"week No."<<i<<"-->"<<weekname[i]<<endl; } return 0; }(14)
#include<iostream> using namespace std; int main() { char*p[]={"Rebacca","Heaven","Michael Chang","Linda Tsai"}; char*temp; int i,j,n=4; for(i=0;i<n-1;i++) for(j=0;j<n-1;j++) if(strcmp(p[j],p[j+1])>0) { temp=p[j];p[j]=p[j+1];p[j+1]=temp; } for(i=0;i<n;i++) cout<<p[i]<<endl;//输出字符串 return 0; }
(15)
#include<iostream> using namespace std; int main() { int a[2][3],*p[2]; int i,j; p[0]=a[0]; p[1]=a[1]; for(i=0;i<2;i++) for(j=0;j<3;j++) a[i][j]=j+i; for(i=0;i<2;i++) for(j=0;j<3;j++) { cout<<"a["<<i<<"]["<<j<<"]:"; cout<<*(p[i]+j)<<endl; } return 0; }(16)
#include<iostream> using namespace std; int main() { int a[2][3],*p[2]; int**pp; int i,j; p[0]=&a[0][0]; p[1]=&a[1][0]; pp=p; for(i=0;i<2;i++) for(j>0;j<3;j++) pp[i][j]=j+i; for(i=0;i<2;i++) for(j>0;j<3;j++) { cout<<"a["<<i<<"]["<<j<<"]:"; cout<<*(p[i]+j)<<endl; } return 0; }(17)
#include<iostream> using namespace std; int main() { char*a[]={"Rebacca","Heaven","Michael Chang",NULL}; char**pp; pp=a; while(*pp!=NULL) cout<<*pp++<<endl; return 0; }(18)
#include<iostream> #include<iomanip> using namespace std; int main() { int a[2][3]={1,2,3,4,5,6}; int(*p)[3]; int i,j; p=a; for(i=0;i<2;i++) { for(j=0;j<3;j++) cout<<setw(3)<<(*p)[j]; p++; } cout<<endl; return 0; }(19)
#include<iostream> using namespace std; void display(int*,int*); int main() { int a=5,b=10; int*pa=&a; int*pb=&b; display(pa,pb); return 0; } void display(int*p1,int*p2) { cout<<"parameter 1 is"<<*p1<<endl; cout<<"parameter 2 is"<<*p2<<endl; }
(20)
#include<iostream> using namespace std; void lower(char*c); int main() { char ch; cout<<"input a uppercase character:"; cin>>ch; lower(&ch); cout<<"convert character:"; cout<<ch<<endl; return 0; } void lower(char*pch) { if(*pch>='A'&&*pch<='Z') *pch+='a'-'A'; //将大写字母转换为小写字母,等价于*pch+=32; }
(21)
#include<iostream> using namespace std; void swap(int*u,int*v); int main() { int a=3,b=4; cout<<"交换前的数据为:"; cout<<"a="<<a<<"\tb="<<b<<endl; swap(&a,&b); cout<<"交换后的数据为:"; cout<<"a="<<a<<"\tb="<<b<<endl; return 0; } void swap(int*u,int*v) { int temp=*u; *u=*v; *v=temp; }
(22)
#include<iostream> using namespace std; void input(int*s,int n); int min(int*s,int n); int main() { int a[10],small; input(a,10); small=min(a,10); cout<<"the minimum is:"<<small<<endl; return 0; } void input(int*s,int n) { cout<<"please input"<<n<<"integers:"<<endl; for(int i=0;i<n;i++) cin>>s[i]; } int min(int*s,int n) { int min,i; min=*s; for(i=1;i<n;i++) if(s[i]<min) min=s[i]; return min; }
(23)
#include<iostream> using namespace std; int main() { int fun(int a,int b); int (*pf)(int a,int b); pf=fun; cout<<"please input two integers:"<<endl; int m,n; cin>>m>>n; int result=(*pf)(m,n); return 0; } int func(int a,int b) { return a+b; }(24)
#include<iostream> using namespace std; int max(int,int); int min(int,int); int add(int,int); void process(int,int,int(*fun)(int,int)); int main() { int a,b; cout<<"enter a and b:"<<endl; cin>>a>>b; cout<<"max="; process(a,b,max); cout<<"mim="; process(a,b,min); cout<<"sum="; process(a,b,add); return 0; } int max(int x,int y) { int z; if(x>y)z=x; else z=y; return z; } int min(int x,int y) { int z; if(x<y)z=x; else z=y; return z; } int add(int x,int y) { int z; z=x+y; return z; } void process(int x,int y,int(*fun)(int,int)) { int result; result=(*fun)(x,y); cout<<result<<endl; }
2
(1)
#include<iostream> using namespace std; int main() { int a[20]={2,4,6,8,10,12,14,16,18,20}; int*p; p=a; for(int i=0;i<10;i++) { cout<<*p<<'\t'; p++; } cout<<endl; return 0; }(2)
#include<iostream> using namespace std; void lower(char a); int main() { char b[20]; cout<<"请输入一个大写字符串:"<<endl; cin.get(b,20); cout<<"该大写字符串转换为小写格式后是:"<<endl; for(int i=0;b[i]!='\0';i++) lower(b[i]); cout<<endl; return 0; } void lower(char a) { if(a>='A'&&a<='Z') a+=32; cout<<a<<'\t'; }(3)
#include<iostream> using namespace std; int main() { char a[20]; char*p; cout<<"输入一个字符串:"<<endl; cin.get(a,20); cout<<"删除空格后的字符串为:"<<endl; for(p=a;*p!='\0';p++) if(*p!=' ') cout<<*p; cout<<endl; return 0; }(4)
#include<iostream> using namespace std; int main() { int q; char*week[]={"January","february","March","April","May","June","July", "August","September","October","November","December"}; while(1) { cout<<"输入一个整数"<<endl; cin>>q; if(q<1||q>12) break; cout<<"该整数对应的月份号是:"<<endl; cout<<week[q]<<endl; } return 0; }
(5)
#include<iostream> using namespace std; int main() { int a[2][3],*p[2],**pp; int i,j; p[0]=&a[0][0]; p[1]=&a[1][0]; pp=p; for(i=0;i<2;i++) for(j=0;j<3;j++) a[i][j]=j+i; for(i=0;i<2;i++) for(j=0;j<3;j++) { cout<<"a["<<i<<"]["<<j<<"]:"; cout<<*(*(pp+i)+j)<<endl; } return 0; }
(6)
#include<iostream> #include<iomanip> using namespace std; int*p[3]; int a[3][4]; int max(); int main() { p[0]=a[0]; p[1]=a[1]; p[2]=a[2]; cout<<"输入一个3X4矩阵的元素:"<<endl; for(int i=0;i<3;i++) for(int j=0;j<4;j++) cin>>a[i][j]; cout<<"该矩阵是:"<<endl; for(int k=0;k<3;k++) { for(int j=0;j<4;j++) cout<<setw(4)<<a[k][j]; cout<<endl; } cout<<"该数组中最大的元素是:"<<max()<<endl; return 0; } int max() { int max; max=*p[0]; for(int j=0;j<3;j++) for(int k=0;k<4;k++) if(*(p[j]+k)>=max) max=*(p[j]+k); return max; }3
#include<iostream> using namespace std; int main() { int n; int a[100]; int*p; int count=0; a[0]=0; cout<<"规则是有n个人围成一个圆圈,从第一个人开始报数,从1到3循环,凡是报3的退出圈子"<<endl; cout<<"输入n的值:"<<endl; cin>>n; for(int i=0;i<n;i++) a[i]+=1; while(count<=n) { for(p=a;p-a<n;p++) if(*p%3==0) { count+=3; break; } } cout<<"最后退出圈子的人是原来的"<<count-3<<"号"<<endl; return 0; }
0 0
- 作业8
- 作业8
- 作业8
- 作业8
- 作业8
- 数据结构作业-8
- 课后作业8
- 第8次作业
- Java作业8_7
- 计算机作业8个
- 课堂作业8
- 算法设计作业8
- 第8周作业
- WEEK 8 JAVA作业
- 机器学习作业8
- 【机器学习】作业8
- 作业
- 作业
- 计划学习之路
- linux vps CentOS LNMP系统上directadmin的完整安装教程
- C++简易字符串处理类
- 计算机科学中最重要的32个算法
- Cocos2d-x3.0 Json解析
- 作业8
- Linux中strchr与strstr函数实现。
- CSDN第一天
- android 绑定远程服务
- 第五周作业
- HTM5之WEB Worker
- linux平台下 延迟工作队列实例
- 行为型模式3:迭代器模式
- mysql学习 常用语句1