判断题

1-1

在for(表达式1;表达式2;表达式3)中,如果表达式2为空,表示循环条件默认为真。

TRUE //可将for的第二个表达式的判断移至循环体内,借助break来结束循环。

1-2

for语句循环体可能一次也不执行。

TRUE//可能不满足循环条件

1-3

continue 只能用于循环体中。

TRUE

1-4

continue 不是结束本次循环,而是终止整个循环的执行。

FALSE

1-5

在多层循环中, 一个break语句只向外跳一层。

TRUE

1-6

运行包含以下代码段的程序将可能进入死循环。

int i = 1;
while(i>0){ i++; printf("%d ",i); }

FALSE //数据的溢出现象

1-7

do-while循环的while后的分号可以省略。

FALSE

1-8

do-while循环至少要执行一次循环语句。

TRUE

1-9

以下两个程序段等价,其功能是计算 s=1+2+...+10。

/* 程序段A*/
s = 0;
i = 1;
while(i <= 10){s = s + i;i++;
}
/* 程序段B */
s = 0;
i = 1;
while(1){if(i > 10){break;}s = s + i;i++;
}

TRUE

1-10

C语言的三种循环不可以互相嵌套。

FALSE

单选题

BAADC,ACCCB

程序填空题

1-1

计算并输出一个非零整数序列(序列非空)中偶数的平均值。所有输入数据用空格隔开,用0结束输入。输出数据保留2位小数。

#include <stdio.h>
int main()
{int number;int sum,n;double average;n = 0;sum = 0;scanf("%d",&number);while(number != 0){if(number%2 == 0){sum += number;n ++;}scanf("%d",&number);
}average = sum*1.0/n;printf("%.2lf\n",average);return 0;
}

number != 0

scanf("%d",&number)

average = sum*1.0/n

1-2

求100-999之间的水仙花数之和(水仙花数 是指一个三位数的各位数字的立方和是这个数本身,如:153=1^3+5^3+3^3)。。

#include <stdio.h>
int main()
{int d1,d2,d3;int n;int sum;sum = 0;for(
d1=1; d1<=9; d1++){for(d2=0; d2<=9; d2++){for(d3=0; d3<=9; d3++){n = d1*100 + d2*10 + d3;if(n == d1*d1*d1 + d2*d2*d2 + d3*d3*d3){sum += n;}}}}printf("%d\n",sum);return 0;
}

d1=1; d1<=9; d1++

d2=0; d2<=9; d2++

n == d1*d1*d1 + d2*d2*d2 + d3*d3*d3

1-3

用数组来求fibonacci数列问题,打印前20项数列,每行打印4个数。

#include<stdio.h>
int main()
{int i;int f[20]={1,1};for (i=2;i<20;i++)f[i]=f[i-1]+f[i-2];for (int i=0;i<20;i++){if((i+1)%4==0)printf("\n");printf("%d ",f[i]);}return 0;
}

f[i-1]+f[i-2]

int i=0

(i+1)%4==0

1-4

输入正整数n,计算s = 1/1! + 1/2! + 1/3! + ……+ 1/n!的值。

#include <stdio.h>
int main( void)
{   int j, k, n;double f, s;scanf("%d", &n);s=0.0; for (k=1; k<=n; k++){f=1.0;for(j=1; j<=k; j++) f=f*j;s=s+1.0/f;}printf("sum=%f\n", s); return 0;
}

s=0.0

f=1.0

j<=k

f=f*j

1-5

语句填空:下列 for循环语句将输出: 0 1 2 0 1 2 0 1 2

for( i=1; i<=9; i++ ) printf("%2d", (i-1)%3);

(i-1)%3

编程题

1-1

本题要求你写个程序把给定的符号打印成沙漏的形状。例如给定17个“*”,要求按下列格式打印

************
*****

所谓“沙漏形状”,是指每行输出奇数个符号;各行符号中心对齐;相邻两行符号数差2;符号数先从大到小顺序递减到1,再从小到大顺序递增;首尾符号数相等。

给定任意N个符号,不一定能正好组成一个沙漏。要求打印出的沙漏能用掉尽可能多的符号。

输入格式:

输入在一行给出1个正整数N(≤1000)和一个符号,中间以空格分隔。

输出格式:

首先打印出由给定符号组成的最大的沙漏形状,最后在一行中输出剩下没用掉的符号数。

输入样例:

19 *

输出样例:

************
*****
2

答案

#include<bits/stdc++.h>
using namespace std;
int main()
{int i,j=1,x=0,y=0,rest,N;char C;cin>>N>>C;while(2*j*j-1<=N){j++;}j--;y=2*j-1;    rest=N-2*j*j+1;while(y>0){for(i=0;i<x;i++)cout<<" ";for(i=0;i<y;i++)cout<<C;cout<<endl;x++;y-=2;}x--;y+=2;while(x>0){x--;y+=2;for(i=0;i<x;i++)cout<<" ";for(i=0;i<y;i++)cout<<C;cout<<endl;}cout<<rest;return 0;
}

1-2

输入一个整数,输出每个数字对应的拼音。当整数为负数时,先输出fu字。十个数字对应的拼音如下:

0: ling
1: yi
2: er
3: san
4: si
5: wu
6: liu
7: qi
8: ba
9: jiu

输入格式:

输入在一行中给出一个整数,如:1234

提示:整数包括负数、零和正数。

输出格式:

在一行中输出这个整数对应的拼音,每个数字的拼音之间用空格分开,行末没有最后的空格。如
yi er san si

输入样例:

-600

输出样例:

fu liu ling ling
#include<bits/stdc++.h>
using namespace std;
int main()
{string str[11]={"ling","yi","er","san","si","wu","liu","qi","ba","jiu","fu"};string a;cin>>a;char m=a.length();for(int i=0;i<a.length();i++){switch(a[i]){case('-'):cout<<str[10];break;case('0'):cout<<str[0];break;case('1'):cout<<str[1];break;case('2'):cout<<str[2];break;case('3'):cout<<str[3];break;case('4'):cout<<str[4];break;case('5'):cout<<str[5];break;case('6'):cout<<str[6];break;case('7'):cout<<str[7];break;case('8'):cout<<str[8];break;case('9'):cout<<str[9];break;}if(i!=a.length()-1)cout<<' ';}return 0;
}

1-3

给定两个整数A和B,输出从A到B的所有整数以及这些数的和。

输入格式:

输入在一行中给出2个整数A和B,其中−100≤A≤B≤100,其间以空格分隔。

输出格式:

首先顺序输出从A到B的所有整数,每5个数字占一行,每个数字占5个字符宽度,向右对齐。最后在一行中按Sum = X的格式输出全部数字的和X

输入样例:

-3 8

输出样例:

   -3   -2   -1    0    12    3    4    5    67    8
Sum = 30
#include<bits/stdc++.h>
using namespace std;
int main()
{int a,b,c=0,sum=0;cin>>a>>b;for(int i=a;i<=b;i++){if(a>b){break;}c++;sum=sum+i;cout<<setw(5)<<setfill(' ')<<i;if(c%5==0){cout<<endl;}else if(i==b){cout<<endl;}}cout<<"Sum = "<<sum<<endl;return 0;
}

1-4

做作业的时候,邻座的小盆友问你:“五乘以七等于多少?”你应该不失礼貌地围笑着告诉他:“五十三。”本题就要求你,对任何一对给定的正整数,倒着输出它们的乘积。

输入格式:

输入在第一行给出两个不超过 1000 的正整数 A 和 B,其间以空格分隔。

输出格式:

在一行中倒着输出 A 和 B 的乘积。

输入样例:

5 7

输出样例:

53
#include<bits/stdc++.h>
using namespace std;
int main()
{int A,B;int s[100];cin>>A>>B;int C=A*B;int k=0,flag=0;while(C>0){s[++k]=C%10;C=C/10;}for(int i=1;i<=k;i++){if(s[i]||flag){cout<<s[i];flag=1;}}return 0;
} 

1-5

Cassels方程是一个在数论界产生了巨大影响的不定方程:x2+y2+z2=3xyz。该方程有无穷多自然数解。

本题并不是要你求解这个方程,只是判断给定的一组 (x,y,z) 是不是这个方程的解。

输入格式:

输入在第一行给出一个不超过 10 的正整数 N,随后 N 行,每行给出 3 个正整数 0<x≤y≤z≤1000。

输出格式:

对于每一组输入,如果是一组解,就在一行中输出 Yes,否则输出 No

输入样例:

2
1 1 1
5 6 7
#include<bits/stdc++.h>
using namespace std;
int main()
{int length, x, y, z, i;cin>>length;if (length > 0){for (i = 1; i <= length; i++){cin>>x>>y>>z;if (x*x + y * y + z * z == 3 * x*y*z){cout<<"Yes"<<endl;}else{cout<<"No"<<endl;}}}return 0;
}

7-6

本题要求编写程序,输出给定正整数M和N区间内的所有三位水仙花数。三位水仙花数,即其个位、十位、百位数字的立方和等于该数本身。

输入格式:

输入在一行中给出两个正整数M和N(100≤M≤N≤999)。

输出格式:

顺序输出M和N区间内所有三位水仙花数,每一行输出一个数。若该区间内没有三位水仙花数,则无输出。

如果M或者N不符合题目的要求,则输出Invalid Value.

输入样例1:

100 400

输出样例1:

153
370
371

输入样例2:

500 600

输出样例2:


输入样例3:

990 101

输出样例3:

Invalid Value.
#include<bits/stdc++.h>
using namespace std;
int main()
{int m,n,x,a,b,c;cin>>m>>n;x=m;if(n>=m&&m>=100&&n<=999){for(x=m;x<=n;x++){a=x/100;b=x/10%10;c=x%10;if(x==pow(c,3)+pow(b,3)+pow(a,3)){cout<<x<<endl;}}
}else{cout<<"Invalid Value.";}return 0;
}

1-7

本题要求编写程序,输入N个字符,统计其中英文字母、空格或回车、数字字符和其他字符的个数。

输入格式:

输入在第一行中给出正整数N,第二行输入N个字符,最后一个回车表示输入结束,不算在内。

输出格式:

在一行内按照

letter = 英文字母个数, blank = 空格或回车个数, digit = 数字字符个数, other = 其他字符个数

的格式输出。请注意,等号的左右各有一个空格,逗号后有一个空格。

输入样例:

10
aZ &
09 Az

输出样例:

letter = 4, blank = 3, digit = 2, other = 1
#include<bits/stdc++.h>
using namespace std;
int main()
{int n,b=0,c=0,d=0,e=0;cin>>n;char a;for(int i=0;i<=n;i++){a=getchar();if((a<='z'&&a>='a')||(a<='Z'&&a>='A')){b++;}else if(a==' '||a=='\n'){c++;}else if(a>='0'&&a<='9'){d++;}else{e++;}}cout<<"letter = "<<b<<", blank = "<<c-1<<", digit = "<<d<<", other = "<<e;return 0;
}

CPP2022-07-循环结构01相关推荐

  1. C++阶段01笔记04【程序流程结构(选择结构、循环结构、跳转语句)】

    C++| 匠心之作 从0到1入门学编程[视频+课件+笔记+源码] 目录 4 程序流程结构 4.1 选择结构 4.1.1 if语句 --①单行格式if语句 --②多行格式if语句 --③多条件的if语句 ...

  2. javaEE009.01 JSTL简介、JSTL通用标签、JSTL选择结构、JSTL循环结构

    系列文章目录 文章目录 系列文章目录 前言 一.JSTL简介 二.JSTL通用标签 三.JSTL选择结构 四.JSTL循环结构 总结 前言 jsp的标准标签库 一.JSTL简介 标签库很多,直接可以看 ...

  3. 【ARM】ARM汇编程序设计(三) 循环结构

    00. 目录 文章目录 00. 目录 01. 循环结构-死循环 02. 循环结构-累加和 03. 循环结构-循环输出 04. 循环结构-循环输出 05. 随机数 06. 综合应用一 07. 综合应用二 ...

  4. JS-逻辑运算符-累加累减-分支循环结构-九九乘法表

    累加累减 var num = 20; var res = (num ++) - (++ num) + (num --) - (++ num) + (num --);​ console.log(res) ...

  5. python代码设计测试用例_[CP_01] Python循环结构案例:模拟银行存取款业务,设计执行测试用例...

    目录结构 一.案例描述 二.需求分析 1. 业务流程图 2. 业务项&测试场景 三.代码实现 四.用例设计&执行(简化模式) 1. 登录业务 2. 存款业务 3. 取款业务 4. 退卡 ...

  6. c语言循环卖n西瓜 几天卖完,C++循环结构23道题含答案.docx

    C++循环结构23道题含答案.docx 循环结构题目.描述.输入.输出.输入样例.输出样例.测试输入.测试输出循环01最大数写一个程序,可以输入一批正数,输入0时结束循环,并且输出最大的正数.输入39 ...

  7. Python基础------几种循环结构详解

    Python基础------几种循环结构详解 在所有的编程语言中,循环结构是必不可少了,Python也一样.在python主要有一下几种循环结构:for-in-.while.range()三种最为常见 ...

  8. JAVA运算符与循环结构

    java标识符 day2 标识符 凡是自己可以起名字的地方都叫标识符 比如:类名.变量名.方法名.接口名.包名 标识符的命名规则(如果不遵守,则编译不通过) 由26个英文字母大小写,0-9,_或$组成 ...

  9. part4-2 流程控制二(循环结构,while、for循环,列表推导式、生成器推导式,常用工具函数,控制循环结构,4个简单实例)...

    循环语句在循环条件满足时,可反复执行某一段代码,这段被重复执行的代码称为循环体.在循环体中,需要在合适的时候把循环条件设置为假,从而结束循环:否则循环一直执行下去形成死循环.循环语句通常包含如下4个部 ...

  10. 国二C语言文字选择程序选择,全国计算机等级考试二级C语言题型总结(二)——选择循环结构程序设计部分.doc...

    全国计算机等级考试二级C语言题型总结(二)--选择循环结构程序设计部分 C语言第二部分上机题型总结 选择结构部分: if结构题型总结 (案例1) 企业发放的奖金根据利润提成.利润(I)低于或等于10万 ...

最新文章

  1. Spartan-6的I/O时钟缓冲器
  2. python conn_python中conn是什么
  3. python test suit_python unittest学习3---添加测试套件,testsuit
  4. Java高级开发工程师面试笔记
  5. 东北考生到南方学计算机,为啥东北考生都想去南方,而南方学生很少考东北,看看他们怎么说...
  6. 详细说明 SourceTree 免登录,跳过初始设置的方法(Windows 版 )
  7. android 创建文件夹_Android 动画小记
  8. 嵌入式操作系统内核原理和开发(基于链表节点的内存分配算法)
  9. JBoss Tomcat 对 JSP 的泛型支持
  10. 16年10月计算机组成原理,福建师范大学16年8月课程考试《计算机组成原理》作业考核试题.doc...
  11. insert into 语句 mysql_sql insert into 语句
  12. Java语言的技术平台:JavaSE、JavaEE和JavaME
  13. scrapy微信爬虫使用总结
  14. 【Python】Python绘制CIE1931色度图并标点
  15. Windows优化大师下载| Windows优化大师下载
  16. 1068. 万绿丛中一点红(20)
  17. android知乎多图片选择,知乎开源Matisse图片选择器使用
  18. IT精英《非诚》引论战 泰国帅哥转角遇到爱
  19. 学好MySQL增删查改,争取不做CURD程序员【下篇(六个小时肝MySQL万字大总结)】
  20. 全球四大卫星导航系统年鉴

热门文章

  1. 解决50%宽度div再加上边框无法左右排列问题
  2. DOS操作系统基本使用方法
  3. 【NLP】句法分析一
  4. uni-app背景图片 background-image,支持 base64 格式图片、支持网络路径图片、本地路径背景图片
  5. 多多情报通:拼多多推广账户金额可以通用吗?里面钱可以提出来吗?
  6. vue 中 keep-alive,activated,deactivated
  7. 粗糙集 rough set theory
  8. mysql 自增 空洞_MySQL auto_increment空洞问题
  9. BZOJ 1778: [Usaco2010 Hol]Dotp 驱逐猪猡
  10. 世界杯最野蛮大战,巴西付出慘重代价步入四强