11.7-01统计数字字符的个数。 输入一行字符,统计出其中数字字符的个数。 输入 一行字符串,总长度不超过255。 输出 输出为1行,输出字符串里面数字字符的个数。 样例输入 Peking University is set up at 1898. 样例输出 4 分析: 1)用gets来输入字符串(因为串可能有空格),到字符数组a中 2)遍历数组for(i=0;i='a&&c='A'&&c[可=0'&&c[] using namespace std; int main() char c[300]; int nNum=0:/存储数字个数 int i; gets(c); for(i=0;c[0=0';i+) { ifc[>=0'&&c[<='9) nNum ++ } cout<<nNum
1 1.7 --01 统计数字字符的个数。 输入一行字符,统计出其中数字字符的个数。 输入 一行字符串,总长度不超过 255。 输出 输出为 1 行,输出字符串里面数字字符的个数。 样例输入 Peking University is set up at 1898. 样例输出 4 分析: 1)用 gets 来输入字符串(因为串可能有空格),到字符数组 a 中 2)遍历数组 for(i = 0 ; i = 'a' && c[i] = 'A' && c[i] = '0' && c[i] using namespace std; int main() { char c[300]; int nNum = 0;//存储数字个数 int i; gets(c); for( i = 0 ; c[i] != '\0'; i ++) { if( c[i] >= '0' && c[i] <= '9') { nNum ++; } } cout << nNum ; }
21.7-33判断回文 描述 输入一个字符串,输出该字符串是否回文。回文是指顺读和倒读都一样的字符串。 输入 输入为一行字符串(字符串中没有空白字符,字符串长度不超过100)。 输出 如果字符串是回文,输出yes:否则,输出no。 样例输入 abcdedcba 样例输出 yes #include/IC+的万能头文件 using namespace std; int main() { char a[101]; gets(a)月 int ij; int n,x; n strlen(a); x=1; for(i=0.j=n-1;i<=j;i+j-) if(afil!=alil) X=0: break: if(x =1) cout <"yes"<endl: } if(x=0)
2 1.7-- 33 判断回文 描述 输入一个字符串,输出该字符串是否回文。回文是指顺读和倒读都一样的字符串。 输入 输入为一行字符串(字符串中没有空白字符,字符串长度不超过 100)。 输出 如果字符串是回文,输出 yes;否则,输出 no。 样例输入 abcdedcba 样例输出 yes #include //C++的万能头文件 using namespace std; int main() { char a[101]; gets(a); int i,j; int n,x; n = strlen(a); x = 1; for(i = 0,j = n-1; i <= j ; i ++,j--) { if( a[i] != a[j]) { x = 0; break; } } if( x == 1) { cout << "yes" << endl; } if( x == 0)
cout /C++的万能头文件 using namespace std; int main() char a[101]; char b[101]; gets(a); int len strlen(a); for(int i=0:i<=len-2 :i+) b[i]=ali]+ali+1]; } b[len-1]=aflen-1]+a[0]; b[len]=0';结束符号不要掉了
{ cout //C++的万能头文件 using namespace std; int main() { char a[101] ; char b[101]; gets(a); int len = strlen(a); for(int i = 0 ; i <= len-2 ;i ++) { b[i] = a[i]+ a[i+1]; } b[len-1] = a[len-1]+a[0]; b[len] = '\0'; //结束符号不要掉了
cout /lC++的万能头文件 using namespace std; int main() { int n; char s1[20],s2[20]; cin >>n: int i;
cout //C++的万能头文件 using namespace std; int main() { int n; char s1[20],s2[20]; cin >> n; int i;
for(i=1;i>s1 >>s2; if(s1[0]=R'&&s2[0]=S) ‖(s1[0]='S&&s2[0]=P) ‖(s1[0]=P&&s2[0]=R) ∥只需判断第一个字母 cout <"Playerl"<<endl; else if(s1[0]=s2[0]) { cout <"Tie"<<endl: } else { cout<<"Player2"<<endl; 51.7-03:基因相关性 描述 为了获知基因序列在功能和结构上的相似性,经常需要将几条不同序列的DNA进行比对, 以判断该比对的DNA是否具有相关性。 现比对两条长度相同的DNA序列。首先定义两条DNA序列相同位置的碱基为一个碱基对, 如果一个碱基对中的两个碱基相同的话,则称为相同碱基对。接着计算相同碱基对占总碱基 对数量的比例,如果该比例大于等于给定阈值时则判定该两条DNA序列是相关的,否则不 相关。 输入 有三行,第一行是用来判定出两条DNA序列是否相关的阈值,随后2行是两条DNA序列 (长度不大于500)。 输出 若两条DNA序列相关,则输出“yes”,否则输出“no”。 样例输入 0.85 ATCGCCGTAAGTAACGGTTTTAAATAGGCC
for(i = 1; i >s1 >>s2; if( (s1[0] == 'R' && s2[0] == 'S') || (s1[0] == 'S' && s2[0] == 'P') || (s1[0] == 'P' && s2[0] == 'R')) //只需判断第一个字母 { cout << "Player1"<<endl; } else if( s1[0] == s2[0]) { cout << "Tie"<<endl; } else { cout << "Player2"<<endl; } } } 5 1.7--03: 基因相关性 描述 为了获知基因序列在功能和结构上的相似性,经常需要将几条不同序列的 DNA 进行比对, 以判断该比对的 DNA 是否具有相关性。 现比对两条长度相同的 DNA 序列。首先定义两条 DNA 序列相同位置的碱基为一个碱基对, 如果一个碱基对中的两个碱基相同的话,则称为相同碱基对。接着计算相同碱基对占总碱基 对数量的比例,如果该比例大于等于给定阈值时则判定该两条 DNA 序列是相关的,否则不 相关。 输入 有三行,第一行是用来判定出两条 DNA 序列是否相关的阈值,随后 2 行是两条 DNA 序列 (长度不大于 500)。 输出 若两条 DNA 序列相关,则输出“yes”,否则输出“no”。 样例输入 0.85 ATCGCCGTAAGTAACGGTTTTAAATAGGCC
ATCGCCGGAAGTAACGGTCTTAAATAGGCC 样例输出 yes #include/C++的万能头文件 using namespace std; int main() { char a[500]; char b[500]; int i; double rat; int count=0: cin >rat>>a>>b: int len strlen(a); for(i=0:irat) cout <<"yes"<<endl: } else cout <"no"<<endl; } } 61.7--12加密的字符串还原 描述 小英是药学专业大三的学生,暑假期间获得了去医院药房实习的机会。 在药房实习期间,小英扎实的专业基础获得了医生的一致好评,得知小英在计算概论中取得
ATCGCCGGAAGTAACGGTCTTAAATAGGCC 样例输出 yes #include //C++的万能头文件 using namespace std; int main() { char a[500]; char b[500]; int i; double rat; int count = 0; cin >> rat >> a >>b; int len = strlen(a); for(i = 0 ; i = rat) { cout << "yes"<<endl; } else { cout << "no" <<endl; } } 6 1.7---12 加密的字符串还原 描述 小英是药学专业大三的学生,暑假期间获得了去医院药房实习的机会。 在药房实习期间,小英扎实的专业基础获得了医生的一致好评,得知小英在计算概论中取得
过好成绩后,主任又额外交给她一项任务,解密抗战时期被加密过的一些伤员的名单。 经过研究,小英发现了如下加密规律(括号中是一个“原文>密文”的例子) 1.原文中所有的字符都在字母表中被循环左移了三个位置(dec>abz) 2.逆序存储(abcd->dcba) 3.大小写反转(abXY->ABxy) 输入 一个加密的字符串。(长度小于50且只包含大小写字母) 输出 输出解密后的字符串。 样例输入 GSOOWFASOq 样例输出 Trvdizrrvj #include/IC+的万能头文件 using namespace std; int main() char a[50]; gets(a); int n=strlen(a): int i; for(i=0;i=x'&&a=X&&ai='A'&ali]='Z) ai]=ai]+32: } else a=a-32
过好成绩后,主任又额外交给她一项任务,解密抗战时期被加密过的一些伤员的名单。 经过研究,小英发现了如下加密规律(括号中是一个“原文 -> 密文”的例子) 1. 原文中所有的字符都在字母表中被循环左移了三个位置(dec -> abz) 2. 逆序存储(abcd -> dcba ) 3. 大小写反转(abXY -> ABxy) 输入 一个加密的字符串。(长度小于 50 且只包含大小写字母) 输出 输出解密后的字符串。 样例输入 GSOOWFASOq 样例输出 Trvdizrrvj #include //C++的万能头文件 using namespace std; int main() { char a[50]; gets(a); int n = strlen(a); int i; for(i = 0 ; i = 'x' && a[i] = 'X' && a[i] = 'A' && a[i] <= 'Z' ) { a[i] = a[i] +32; } else { a[i] = a[i] -32;
} } for(i=n-1;i>=0;i-)/逆序输出 cout /lC++的万能头文件 using namespace std; int main() { int n; cin >n: string s[100],a;
} } for(i = n-1; i >= 0 ; i--) //逆序输出 { cout //C++的万能头文件 using namespace std; int main() { int n; cin >> n; string s[100],a;
int i; for(i=0:i>s[i]; } for(i=0;i='a'&&a0]='A'&&alj]<='Z) a]=aj+32; } } s[1=a,∥修改后保存下来 } for(i=0:i<n:i++) cout <si<<endl; 81.7--18判断是否是子串 描述 输入两个字符串,验证其中一个串是否为另一个串的子串。 输入 输入两个字符串,每个字符串占一行,长度不超过200且不含空格。 输出 若第一个串sl是第二个串s2的子串,则输出(sl)is substring of(s2)
int i; for(i = 0; i >s[i]; } for(i = 0 ; i = 'a' && a[0] = 'A' && a[j] <= 'Z' ) { a[j] = a[j] +32; } } s[i] = a;//修改后保存下来 } for(i = 0; i < n ; i ++) { cout << s[i] << endl; } } 8 1.7---18 判断是否是子串 描述 输入两个字符串,验证其中一个串是否为另一个串的子串。 输入 输入两个字符串, 每个字符串占一行,长度不超过 200 且不含空格。 输出 若第一个串 s1 是第二个串 s2 的子串,则输出(s1) is substring of (s2)
否则,若第二个串s2是第一个串sl的子串,输出(s2)is substring of(sl) 否则,输出No substring。 样例输入 abc dddncabca 样例输出 abc is substring of dddncabca #include/IC++的万能头文件 using namespace std; int main() char s1[201]; char s2[201]; gets(sl)方 gets(s2); if(strstr(s1,s2)) cout <<s2<<is substring of"<<sl<<endl; else if(strstr(s2,s1)) cout<<s1<<"is substring of "<<s2 <endl; else cout <"No substring"<<endl; 或者: 题目 1.7--18 描述 输入两个字符串,验证其中一个串是否为另一个串的子串。 输入 输入两个字符串,每个字符串占一行,长度不超过200且不含空格
否则,若第二个串 s2 是第一个串 s1 的子串,输出(s2) is substring of (s1) 否则,输出 No substring。 样例输入 abc dddncabca 样例输出 abc is substring of dddncabca #include //C++的万能头文件 using namespace std; int main() { char s1[201]; char s2[201]; gets(s1); gets(s2); if(strstr(s1,s2)) { cout << s2<< " is substring of " << s1<< endl; } else if( strstr(s2,s1)) { cout << s1 << " is substring of "<< s2 << endl; } else { cout << "No substring" <<endl; } } 或者: 题目 1.7---18 描述 输入两个字符串,验证其中一个串是否为另一个串的子串。 输入 输入两个字符串, 每个字符串占一行,长度不超过 200 且不含空格