前言:
而今看官们对“c语言循环结构例题难题”可能比较注意,你们都想要了解一些“c语言循环结构例题难题”的相关文章。那么小编在网络上收集了一些关于“c语言循环结构例题难题””的相关文章,希望大家能喜欢,各位老铁们快快来学习一下吧!第一阶段的内容:
输入、输出、变量
关键点:printf的使用、数据类型int double char bool
分支选择结构
关键点:if/if else/if else if /选择嵌套/switch case/break/逻辑运算符
循环结构
关键点:while/do while/for/break continue/循环的嵌套
例题:质数判断
题目描述:输入一个正整数,判断是否是素数。
输入描述:输入一个正整数
输出描述:如果是素数输出prime 如果不是输出not prime。
样例输入:97 样例输出:prime
样例输入:10 样例输出:not prime
#include <iostream>#include <cmath>using namespace std;int main(){int n = 0;//输入的数cin >> n;//输入一个数for(int i=2;i<=sqrt(n);i++){//2到前一个数if(n%i==0){//整除了cout << "not prime" << endl;}}cout << "prime" << endl;return 0;}
例题:范围质数
题目描述:一行两个正整数,分别代表n和m,输出n和m之间的所有质数,数字用空格隔开。
输入描述:输入两个正整数
输出描述:空格隔开的一列数。
样例输入:2 10 样例输出:2 3 5 7
#include <iostream>#include <cmath>using namespace std;int main(){int n = 0,m = 0;//输入的数cin >> n >> m;//输入数bool isPrim;for(int j=n;j<=m;j++){isPrim = true;for(int i=2;i<=sqrt(j);i++){//2到前一个数if(j%i==0){//整除了isPrim = false;break;}}if(isPrim){cout << j << " ";}}cout << endl;return 0;}
例题: Peter的烟 P1150
题目描述:Peter有n根烟,他每吸完一根烟就把烟蒂保存起来k(k>1)个烟蒂可以换一个新的烟,那么Peter 最终能吸到多少根烟呢?
输入描述:每组测试数据一行包括两个整数 n,k。
输出描述:对于每组测试数据,输出一行包括一个整数表示最终烟的根数。
样例输入:4 3 样例输出:5
样例输入:10 3 样例输出:14
第一个思路:
//烟 兑换比例 烟总数 烟蒂int n = 0, k = 0,b = 0,a = 0;cin >> n >> k;while(n!=0){//只要有烟抽 那我就一直抽n--;//抽一根b++;//总数加一根 计数a++;//烟蒂多一个if(a == k){//只要兑换比例够了a-=k;//兑换走n++;//加根烟}}cout << b << endl;
第二个思路:
#include <iostream>using namespace std;int main(){int n = 0, k = 0;//多少根烟 多少烟蒂换烟cin >> n >> k;int y = 0,yd = 0;//烟和烟蒂do{y += n;//全抽完yd += n;//多少根烟蒂n = yd/k;//兑换的烟yd = yd%k;//剩下的烟蒂}while(n>0);cout << y << endl;return 0;}
一个有问题的思路:
//输入的烟 兑换比例 兑换的烟int n = 0,k = 0,s = 0;cin >> n >> k;s = n/k;//兑换完了所有的烟蒂if(n%k+s>=k){cout << n + s + 1 << endl;}else{cout << n + s << endl;}
标签: #c语言循环结构例题难题