C++第四章课本例题与习题(第六周)
来源:互联网 发布:我是皇盾牌进阶数据 编辑:程序博客网 时间:2024/05/19 17:52
例4.1
#include<iostream>using namespace std;int main(){ int a[10];int i;for(i=0;i<10;i++) //给所有的数组元素赋初值a[i]=i*2+2;for(i=0;i<10;i++) //输出所有的数组元素,没行显示5个数组元素{ cout<<a[i]<<'\t';if((i+1)%5==0)cout<<endl;}return 0;}
例4.2
#include<iostream>using namespace std;int main(){ int i,math[40],n;float aver=0.0; //平均分int unpassedcout = 0; // 不及格学生人数int highscorecout =0; // 90分以上学生人数cout<<"请输入学生人数:";cin>>n;cout<<"请输入学生成绩:";for(i=0;i<n;i++){cin>>math[i]; aver+=math[i];} aver/=n; for(i=0;i<n;i++) { if(math[i]<60) unpassedcout++;if(math[i]>90) highscorecout++;}cout<<"平均分为:"<<aver<<endl;cout<<"90分以上人数为:"<<highscorecout<<endl;cout<<"不及格人数为:"<<unpassedcout<<endl; return 0;}
4.3
#include<iostream>#include<iomanip>using namespace std;int main(){ int a[10],i,big;cout<<"please input 10 numbers:\n";for(i=0;i<10;i++)cin>>a[i]; cout<<"the numbers are:";for(i=0;i<10;i++)cout<<setw(4)<<a[i];cout<<endl;big=a[0];for(i=0;i<10;i++)if(a[i]>big)big=a[i]; cout<<"the big numbers is:"<<big<<endl;return 0;}
4.4
#include<iostream>#include<iomanip>using namespace std;int main(){ int a[10];int i,j,t;cout<<"please input 10 numbers:\n";for(i=0;i<10;i++)cin>>a[i]; //输入数组元素cout<<"the numbers are:";for(i=0;i<10;i++)cout<<setw(4)<<a[i];cout<<endl;for(i=0;i<9;i++) for(j=0;j<9-i;j++)if(a[j]>a[j+1]){ t=a[j];a[j]=a[j+1];a[j+1]=t;} cout<<"the sorted numbers are:";for(i=0;i<10;i++)cout<<setw(4)<<a[i]; //输出数组元素cout<<endl;return 0; }
4.5
#include<iostream>#include<iomanip>using namespace std;int main(){ int i;int f[40]={1,1};for(i=2;i<40;i++)f[i]=f[i-2]+f[i-1]; //将前40个数存入数组for(i=0;i<40;i++){ if(i%4==0)cout<<endl; cout<<setw(12)<<f[i];}cout<<endl; return 0;}
4.6
/* 例4.6 from郑天由 */#include<iostream>#include<iomanip>using namespace std;int main(){ int i,j; int a[5][5]; for(i=0;i<5;i++) { for(j=0;j<5;j++) { if(i%2==0) a[i][j]=i*5+j+1; else a[i][4-j]=i*5+j+1; } } for(i=0;i<5;i++) { for(j=0;j<5;j++) cout<<setw(4)<<a[i][j]; cout<<endl; } return 0;}
4.7与4.6基本相同,就不重复了。
4.8
#include<iostream>using namespace std;int main(){ char str[50];cout<<"Please input strings:";cin.get(str,50); //默认结束符是Entercout<<"The strings is:";cout<<str<<endl; return 0;}
4.9
/*例4.9*/#include<iostream>#include<cstring>using namespace std;int main(){ char str[100]; cout<<"请输入一个字符串:"; cin.get(str,100); cout<<"字符串"<<str<<"的反向字符串为:"; for(int i=strlen(str)-1;i>=0;i--) //strlen()为求字符串长度函数 cout<<str[i]; cout<<endl; return 0;}
4.10
/* li4.10 */#include <iostream> using namespace std; int main() { char s[]="This is C programming test."; int i=0,pLen=0,maxpLen = 0, pSeat = 0; while(s[i]!='\0') { while(s[i]!=' '&&s[i]!='\0') //qubiedancibingjisuanchangdu { pLen++; i++; } if(pLen>maxpLen) //jilui最长单词的位置与长度 { pSeat=i-pLen; maxpLen=pLen; } while(s[i]==' ') i++; pLen=0; //为计算下一个单词长度赋初值 } cout <<"最长的单词 :"; for(i=0;i<maxpLen;i++) cout << s[pSeat+i]; cout <<endl; return 0; }
4.11
/*例4.11*/#include<iostream>#include<iomanip>using namespace std;int main(){ char str[50];cout<<"Please input a string:";cin.get(str,50);cout<<"The length of string"<<str<<"is"<<strlen(str)<<endl;return 0;}
/*例4.12 by 郑天由 */#include<iostream>#include<cstring>using namespace std;int main(){ char str[10];cout<<"请输入字符串,直到输入 hello 后程序结束:"<<endl;do{ cin>>str;}while(strcmp(str,"hello")!=0);return 0;}
4.13
#include<iostream>using namespace std;int main(){ char str[50]; int len=0; cout<<"请输入一个字符串:"; cin.get(str,50); while(str[len] !='\0') len++; cout<<"字符串"<<str<<"的长度"<<len<<endl; return 0;}//编写一个程序mystrlen.cpp,yonglai计算字符串的长度
习题1
//习题1#include<iostream>#include<iomanip>using namespace std;int main(){ int i,j,t;int str[5];cout<<"请输入五个数:"<<endl;for(i=0;i<5;i++)cin>>str[i]; cout<<"这五个数的从小到大的顺序是:"<<endl;for(i=0;i<4;i++)for(j=0;j<4-i;j++)if(str[j]>str[j+1]){t=str[j];str[j]=str[j+1];str[j+1]=t;}for(i=0;i<5;i++)cout<<str[i]<<setw(4); cout<<endl; return 0;}
#include<iostream>#include<iomanip>using namespace std;int main(){ int a[2][3];int i,j,big;cout<<"请输入二行三列二维数组的元素值:"<<endl; for(i=0;i<2;i++) for(j=0;j<3;j++) { cout<<"a["<<i<<"]"<<"["<<j<<"]="; cin>>a[i][j];}cout<<"该二维数组为:"; for(i=0;i<2;i++) for(j=0;j<3;j++){ if(j%3==0)cout<<endl;cout<<setw(4)<<a[i][j];}cout<<endl;big=a[0][0]; for(i=0;i<2;i++) for(j=0;j<3;j++)if(a[i][j]>=big)big=a[i][j]; for(i=0;i<2;i++) for(j=0;j<3;j++) if(a[i][j]==big)cout<<"该数组中最大元素为:"<<"a["<<i<<"]"<<"["<<j<<"]="<<a[i][j]<<endl;}
#include<iostream>using namespace std;int function(int n);int main(){ int i,count;count=0; for(i=1;i<=20;i++){cout<<function(i)<<" "; cout<<endl;if(function(i)>=100&&function(i)<=999)count++; } cout<<"Fibonacci数列前20个数中的三位数个数为:"<<count<<endl; cout<<"该数列第16项数据是:"<<function(16)<<endl; return 0; }int function(int n){ if(n==1||n==2)return 1; else return function(n-1)+function(n-2);}
4
#include<iostream>#include<iomanip>using namespace std;int main(){char a[100];int i,xiaoxue=0,shuzi=0,daxue=0,kongge=0,qita=0;cout<<"请输入一行字符小于100的文字:"; cin.get(a,100); for(i=0;i<100;i++) { if(a[i]>='a'&&a[i]<='z') xiaoxue++; else if (a[i]>='0'&&a[i]<='9') //因为a被定义为char,,所以应该写成'0' '9' shuzi++; else if (a[i]>='A'&&a[i]<='Z') daxue++; else if (a[i]==' ') kongge++; else if (a[i]=='\0') qita=strlen(a)-(shuzi+xiaoxue+daxue+kongge);} cout<<"数字个数为:"<<shuzi<<endl; cout<<"小写字母个数为:"<<xiaoxue<<endl; cout<<"大写字母个数为:"<<daxue<<endl; cout<<"空格个数为:"<<kongge<<endl; cout<<"其他字符个数为:"<<qita<<endl; return 0;}
5.
#include<iostream>using namespace std;int main(){ char a[100]; int i; cout<<"输入一字符串:"<<endl; cin.get(a,100); cout<<"反向输出每一个字符:"<<endl; for(i=strlen(a);i>0;i--) cout<<a[i-1]; cout<<"该字符串长度为:"<<strlen(a)<<endl; return 0;}
6.
#include<iostream> using namespace std; int main() { int i,b,shuzi;shuzi=0; b=0; char a[100]; cout<<"输入一个字符串:"<<endl; cin.get(a,100); cout<<"删除了所有数字后的字符串为:"<<endl; for(i=0;i<100;i++) if(a[i]=='\0') break; else if(a[i]>='0'&&a[i]<='9') shuzi++; else cout<<a[i]; cout<<"该字符串的长度为:"<<strlen(a)-shuzi<<endl; return 0; }
0 0
- C++第四章课本例题与习题(第六周)
- 第六周作业(课本例题)
- 第六周作业(课本例题)
- c++primer plus 第六版第四章编程习题
- 《C Primer Plus 》第六版 习题 第四章
- 第七周作业(课本例题)
- 第七章课本例题
- 第九周(例题)——课本例题的熟悉。
- 算法竞赛入门经典(第二版)-刘汝佳-第四章 函数与递归 例题+习题(15/16)
- 【C】第四章习题
- Thinking in Java(第四版)习题--第六章
- c++第七周作业(课本习题)
- 第五章作业一(课本习题)
- 第七周 课本习题
- 第十三周----课本例题11.8
- 第十三周----课本例题11.7
- 第七周和第八周作业(第五章课本例题)
- C++Primer习题第六章
- 发动机的工作原理,你知道吗?
- 解决ant编译中出现“includeantruntime was not set”警告的问题
- deque双端队列容器
- 如何删除大表
- 建造者模式
- C++第四章课本例题与习题(第六周)
- C语言开发 -- 调试技巧2
- Maven最佳实践:Maven仓库
- 警告:编码 utf8 的不可映射字符 ANT编译java文件的问题
- PHP开发中的NULL
- Maven最佳实践:管理依赖
- Ubuntu下vim插件的在线安装
- 制动踏板是什么?
- ArcGlobe三维开发之十二——3D符号化(添加3D符号)