12 条题解
-
6
1.int 类型定义的变量,可以直接赋值字符,自动转换成ASCII码
2.在循环内部设置标记变量,每次判断完素数后都要重新设初始值
3.强制转换输出数字和字符,注意格式哦~
ps:判断素数就是依次查找2-数字减一之间的数是否能整除数字,如果有能整除的就不是素数!
AC过,请放心食用
#include <iostream> using namespace std; bool check(int x)//素数函数 { bool n = true; for (int i = 2; i < x; i++) { if (x % i == 0) { n = false; } } return n; } int main() { for (int i = 'A'; i <= 'Z'; i++)//判断大写字母 { if (check(i)) { cout << i << ' ' << char(i) << endl;//输出 } } for (int i = 'a'; i <= 'z'; i++)//判断小写字母 { if (check(i)) { cout << i << ' ' << char(i) << endl;//输出 } } return 0; }
-
5
利用以上知识,来看看这道题吧~
- 遍历65 ~ 90(大写字母),是素数的输出 i 和 字符类型
- 遍历97 ~ 122(小写字母),是素数的输出
- 注意!:内循环里判断素数要从 2 ~ i!
上代码吧~(AC过,别问了)
#include <bits/stdc++.h> using namespace std; int main() { for (int i = 65; i <= 90; i++) { int s = 0; for (int j = 2; j < i; j++) { if (i % j == 0) s = 1; } if (s == 0) cout << i << " " << (char)i << endl; } for (int i = 97; i <= 122; i++) { int s = 0; for (int j = 2; j < i; j++) { if (i % j == 0) s = 1; } if (s == 0) cout << i << " " << (char)i << endl; } return 0; }
-
1
最快代码
#include <iostream> using namespace std; bool prime(int n)//判断素数 { if (n==2) return true; else if (n%2==0) return false; else { for (int i=3;i*i<=n;i+=2) { if (n%i==0) return false; } return true; } } int main() { for (int i=0;i<26;i++)//遍历大写字母 { if (prime('A'+i)) cout<<'A'+i<<' '<<char('A'+i)<<endl; } for (int i=0;i<26;i++)//遍历小写字母 { if (prime('a'+i)) cout<<'a'+i<<' '<<char('a'+i)<<endl; } return 0; }
-
1
这道题主要考察如何判断一个数是否为素数(质数)和for循环,没什么好讲的,看代码注释去!!!
代码(AC过,请放心食用):
#include<iostream> using namespace std; int main() { int i,j; for(i=65;i<=90;i++) //循环判断大写素数字母 { for(j=2;j<i;j++) { if(i%j==0) //如果2~i-1中有可以整除这个数的数 { break; //终止循环 } } if(i==j) //如果没有可以整除这个数的数 { cout<<j<<" "<<char (j)<<endl; //输出 } } for(i=97;i<=122;i++) //循环判断小写素数字母 { for(j=2;j<i;j++) { if(i%j==0) //如果2~i-1中有可以整除这个数的数 { break; //终止循环 } } if(i==j)//如果没有可以整除这个数的数 { cout<<j<<" "<<char (j)<<endl; //输出 } } return 0; }
-
0
过辣!
for (int i=65;i<=90;i++)//大写 { int num=0; for (int j=1;j<=i;j++) { if (i%j==0) { num++; } } if (num==2) { cout<<i<<" "<<(char)i<<endl;//强转 } } //因为大写和小写之间还有6个字符,所以我选择分开来遍历,感觉这样的思路会清晰点。 for (int i=97;i<=122;i++)//小写 { int num1=0; for (int j=1;j<=i;j++) { if (i%j==0) { num1++; } } if (num1==2) { cout<<i<<" "<<(char)i<<endl; } }
-
0
#include <bits/stdc++.h> using namespace std; int main() { bool a = false; for (int i = 65;i <= 122;i++) { a = false; for (int q = 2;q < i;q++) { if (i % q == 0) { a = true; break; } else { continue; } } if (a == false) { cout << i << " "; cout << char(i) << endl; } } return 0; } 这题其实还算简单,就是一个指数判断,范围在码表中,背好码表,直接确定取值范围,然后指数判定大家应该都会,最后数字+char类型强制转换 就OK啦
-
0
其实这一道题我一开始也搞不懂,为啥i+'A'/'a'不过关,也不想想了,直接一个char函数 上菜!
我是外卖小哥,不给五星好评不!上!菜!#include <iostream> using namespace std; bool prime(int x) { for(int i=2;i<x;i++) { if(x%i==0) { return false; } } return true; } int main() { for(int i='A';i<='Z';i++) { if(prime(i)) { cout<<i<<" "<<char(i)<<endl; } } for(int i='a';i<='z';i++) { if(prime(i)) { cout<<i<<" "<<char(i)<<endl; } } return 0; }
-
0
没啥好讲的,ASCII老朋友了,上代码👀️
#include<iostream> using namespace std; bool check(int n)//创建一个有返有参的函数 { bool flag=true; for(int i=2;i<n;i++) { if(n%i==0)//判断是否为素数 flag=false;//更改返回值 } return flag; } int main() { for(int i='A';i<='Z';i++)//大写 { if(check(i)) cout<<i<<" "<<char(i)<<endl;//输出 } for(int i='a';i<='z';i++)//小写 { if(check(i)) cout<<i<<" "<<char(i)<<endl; } return 0;//别忘了 }//已AC,放心食,over
- 1
信息
- ID
- 969
- 时间
- 1000ms
- 内存
- 64MiB
- 难度
- 3
- 标签
- 递交数
- 719
- 已通过
- 365
- 上传者