第三节:循环结构程序设计题目

合集下载

C循环结构程序设计试题以及参考答案

C循环结构程序设计试题以及参考答案

C循环结构程序设计试题以及参考答案C循环结构程序设计试题以及参考答案实验内容:1.编程:输出200以内所有能被7整除的数。

#includemain(){int i;for(i=1;i<200;i++)if(i%7==0)printf("%4d",i);}2. 编程:求出1 ~ 1000之间能被13整除的最⼤的那个数。

#includemain(){int i,max=0;for(i=1;i<1000;i++)if(i%13==0){i>=max;max=i;}printf("max=%d",max);}3.编程:找出若⼲个⾮零数中的最⼩值m以及它们的平均值a。

要求:若⼲个数由键盘输⼊,每次输⼊⼀个赋给变量x,x为零时,结束输⼊。

#includemain(){int n,i,b,min,s=0;float a;printf("输⼊的数据的个数n=");scanf("%d",&n);for(i=1;i<=n;i++){scanf("%d",&b);if(i==1)min=b;if(min>b)min=b;s=s+b;}a=s*1.0/n;printf("min=%d\n a=%f",min,a); }4. 编程:求两个正整数m、n之间所有奇数之和x与偶数之和y。

要求:(1)m、n的值由键盘输⼊。

(2)输⼊时,允许⽤户随意先输⼊⼤的或⼩的整数。

#include main(){int m,n,i,x1=0,x2=0;printf("input m,n(mscanf("%d,%d",&m,&n);for(i=m;i<=n;i++){if (i%2==1)x1+=i;elsex2+=i;}printf("x1=%d,x2=%d\n",x1,x2);}5. 编程:计算π的近似值,π的计算公式为:要求:(1)n值由键盘输⼊。

循环程序设计习题及答案

循环程序设计习题及答案

循环程序设计习题及答案循环程序设计习题及答案1-基本循环控制结构1-1 基本循环结构示例<代码示例>1-2 循环条件<代码示例>答案:循环条件是一个布尔表达式,如果条件为true,循环将继续执行。

如果条件为false,循环将终止。

1-3 循环计数器<代码示例>答案:循环计数器是一个变量,用于记录循环执行的次数。

1-4 循环控制语句1-4-1 break语句<代码示例>答案:break语句用于提前终止循环,并跳出循环体。

1-4-2 continue语句<代码示例>答案:continue语句用于跳过当前循环体中剩余的代码,直接进入下一次循环。

2-常见循环题型2-1 计算累加和<代码示例>答案:使用循环结构,每次迭代都将当前值累加到一个变量中。

2-2 计算阶乘<代码示例>答案:使用循环结构,每次迭代都将当前值与累积值相乘,并更新累积值。

2-3 猜数字游戏<代码示例>答案:使用循环结构,与用户交互对比猜测的数字与目标数字,直到猜测正确或达到最大猜测次数。

3-循环的嵌套和嵌套控制结构3-1 嵌套循环结构示例<代码示例>3-2 循环的嵌套控制3-2-1 嵌套循环的break语句<代码示例>答案:break语句可以终止当前循环,并直接跳出嵌套循环的外层循环。

3-2-2 嵌套循环的continue语句<代码示例>答案:continue语句可以跳过当前循环体中的剩余代码,并继续下一次迭代。

4-附件本文档没有涉及附件。

5-法律名词及注释5-1 循环:程序中一种重复执行的结构,可通过循环变量控制执行次数。

5-2 循环条件:循环结构中的判断条件,决定循环是否继续执行。

5-3 循环计数器:循环结构中用于记录循环次数的变量。

5-4 break语句:用于提前终止循环,并跳出循环体的语句。

5-5 continue语句:用于跳过当前循环体中剩余的代码,直接进入下一次循环的语句。

C语言程序设计:循环结构程序设计单元测试与答案

C语言程序设计:循环结构程序设计单元测试与答案

一、单选题1、下面程序的运行结果是 ( )。

#include <stdio.h>int main( ){int i=5;while(i>0);printf("%d",i--);return 0;}A.5B.死循环C.0D.-1正确答案:B2、关于下面程序段,正确的是()。

int k=10;while(!k)k--;A.循环体执行1次B.循环体执行10次C.循环体一次也不执行D.死循环正确答案:C3、下面程序的运行结果是( )。

#include <stdio.h>int main( ){int x=3;do{printf("%3d",x-=2);}while(!(--x));return 0;}A.1 -2B.死循环C.10D.1正确答案:A4、下面程序的运行结果是( )。

#include <stdio.h>int main( ){int i=10;while(i-->0);printf("%d ",i);return 0;}A.10B.0C.10987654321D.-1正确答案:D5、已定义int j; 下面程序段的输出结果是()。

for(j=7;j<10;j++)printf("%d",j);A.91011B.8910C.789D.无结果正确答案:C6、下面程序的输出结果是()。

#include <stdio.h>int main( ){int i,j,s=0;for(j=1,i=7;j<=i;j++,i--)s=s+i+j;printf("%d",s);return 0;}A.死循环B.28C.0D.32正确答案:D二、判断题1、while循环语句至少无条件执行一次循环体。

正确答案:×2、for循环语句只能用于循环次数已经确定的情况。

循环结构程序设计练习题内含答案

循环结构程序设计练习题内含答案

第三单元循环结构练习题选择题:1、有以下程序执行后的输出结果是( D )。

main( ){ int i,s=0; for(i=1;i<10;i+=2)s+=i+1;printf("%d\n",s);}A.自然数 1~9的累加和B.自然数 1~10 的累加和C.自然数 1~9中的奇数之和D.自然数 1~10 中的偶数之和2、以下关于 for 语句的说法不正确的是( A )。

A. for循环只能用于循环次数已经确定的情况B. for循环是先判断表达式,后执行循环体语句C. for循环中,可以用 break 跳出循环体D. for循环体语句中,可以保含多条语句,但要用花括号括起来3、若 i和 k 都是 int 类型变量,有以下 for语句for(i=0,k=-1;k=1;k++) printf("*****\n");下面关于语句执行情况的叙述中正确的是(d)。

A. 循环体执行两次B.循环体执行一次C.循环体一次也不执行D. 构成无限循环4、以下程序程序的执行后的输出结果是(c)。

main(){int i,t[][3]={9,8,7,6,5,4,3,2,1};for(i=0;i<3;i++) printf(“%d”,t[2 -i][i]);}A.753B.357C.369D.7515、以下程序运行后的输出结果是( A )。

void fun(char*s){ while(*s){ if(*s%2==0)printf(“%c”,*s);s++;}}main(){ char a[]={“good”};fun( a) ;printf(“ n”);}注意:字母 a 的 ASCⅡ码值为 97A.dB.goC.godD.good6、已知 int t=0 ; while ( t=1 ){...}则以下叙述正确的是( B)。

A)循环控制表达式的值为 0B)循环控制表达式的值为 1C)循环控制表达式不合法D)以上说法都不对7、设有以下程序段 Bint x=0,s=0;while (!x!=0 ) s+=++x;printf ( "%d",s );则A)运行程序段后输出0B)运行程序段后输出 1C)程序段中的控制表达式是非法的D)程序段执行无限次8、设 i ,j ,k 均为 int型变量,则执行完下面的 for 语句后, k 的值为( C)。

循环结构程序设计典型例题

循环结构程序设计典型例题

循环结构程序设计典型例题循环结构程序设计典型例题例1:有数列2/3、4/5、6/9、10/15……求此数列前30项的和。

算法分析:对于数列的题,首先要找出通项公式,或前后项的计算关系公式,根据公式求所需。

由于数列的题一般执行次数能确定,用for语句来编写比较方便。

此题,前后项的关系是:后一项的分子是前一项的分母加1,后一项的分母是前一项的分子加分母。

解题思路是用循环语句求各项,并把值累加,因为是求前30项的和,循环执行30次。

1. 初值i=2,j=3,s=0;2. 用n从1到30循环3. s=s+ i/j;4. c=i; i=j+1; j=c+j;5.输出s;程序:#include<>main( ){ int i=2,j=3,n,c;float s=0;for(n=1;n<=30;n++){ s=s+(float)i/j;c=i;i=j+1;j=c+j;}printf(“\n%f”,s);}此题中的n与循环体中的执行语句没有数值上的联系,仅仅用做决定循环执行的次数。

例2:下面这个程序,想想它实现的是什么功能?#include<>main( ){ int i,s=0;for(i=1;i<=100;i++){if(i%5==0) continue;s=s+i;}printf(“\n%d”,s);}在左边的程序中,i从1到100循环,当i是5的倍数时,直接进入下一个i,当i不是5的倍数时,把i累加到s,最后输出s。

所以,这个程序实现的是求1~100中间所有非5的倍数的数之和。

例3:输出n~m中(0<n<m)能被3整除,且至少有一个数字是5的所有数。

< p="">算法分析:1 输入n与m的值2 用整型变量a从n-m循环,每次值加13.若a能被3整除,执行第4步,否则执行第9步4令整型变量x=a5.若x>0,执行第6步,否则执行第9步=x%107.若i值不为5,执行第8步,否则输出a,并执行第9步=x/10,并返回第5步9.返回第2步,察看下一个a程序:#include<>main( ){ long a,x,i,t,n,m;scanf(“%ld%ld”,&n,&m);for(a=n;a<=m;a++)if(a%3==0){ x=a;while(x>0){ i=x%10;if(i==5) {printf(“\t%ld”,a);break;} x=x/10;}}}问:能把a%3==0也放到for循环语句的表式2中,写成a<=m&&a%3==0吗?答:不可以!例4:求3-150中所有素数的和。

循环结构程序设计练习题__内含答案概要

循环结构程序设计练习题__内含答案概要

第三单元循环构造练习题选择题:(有答案) 1、有以下程序履行后的输出结果是( D )。

main( ) { int i,s=0; for(i=1;i<10;i+=2) s+=i+1; printf("%d\n",s);} A .自然数 1~ 9 的累加和 B .自然数 1~ 10 的累加和 C .自然数 1~ 9 中的奇数之和 D.自然数 1~ 10 中的偶数之和 2、以下对于 for 语句的说法不正确的选项是( A )。

A. for 循环只好用于循环次数已经确立的状况 B. for 循环是先判断表达式,后履行循环体语句 C. for 循环中,能够用 break 跳出循环体D. for 循环体语句中,能够保含多条语句,但要用花括号括起来 3、若 i 和 k 都是 int 种类变量,有以下 for 语句 for(i=0,k=-1;k=1;k++) printf("*****\n"); D )。

下边对于语句履行状况的表达中正确的选项是(A. 循环体履行两次B. 循环体履行一次C.循环体一次也不履行D. 组成无穷循环4、若运转以下程序时,输入 2473↙,则程序的运转结果是:(A ) main ( ) { int c;while ((c=getchar( )) ! =’ n ’) switch (c- ‘2’) {case 0 :case 1 : putchar (c+4) ;case 2 : putchar (c+4) ; break ;case 3 : putchar (c+3) ; default : putchar (c+2) ; break ;}pr intf( “ n ”);}A ) 668977B ) 668966C ) 66778777D ) 6688766 5、以下 for 循环的履行次数是:( C ) 。

for (x=0,y=0; (y=123) && (x<4) ; x++) ;A )无穷循环B )循环次数不定C ) 4 次D ) 3 次 6、已知 int t=0 ; while (t=1 ) {...} 则以下表达正确的选项是( B )。

实验3、循环结构程序设计(有答案)

实验3、循环结构程序设计(有答案)

循环结构程序设计1.程序填空下面程序的功能为:计算1~100之间的偶数之和,完成以下的程序并运行出正确的结果。

# include <stdio.h>void main(){int i,s=0;/**************found*************/i=2 ;while(i<=100){s=s+i;/**************found**************/i+=2 ;}printf(“s=%d”,s);}运行结果:S=25502.程序改错(1) 下面程序的功能为:计算10!,修改以下的程序并上机运行通过。

#include <stdio.h>void main(){int n,t;for(n=1,t=1,t<10,t++);n=n*t;printf(“10!=%d\n”,n);}正确的程序:#include <stdio.h>void main(){int n,t;for(n=1,t=1;t<=10;t++) //句尾不能有“;”n=n*t;printf(“10!=%d\n”,n);}运行结果:10!=3628800(2) 下面程序的功能为:计算1~100之间能被3和7整除的数之和,修改以下的程序并上机运行通过。

#include <stdio.h>void main(){int i,s;s=0;while(i<=100);{if(i%3==0||i%7==0)s+=i;i=i+1;}printf(“s=%d”,s);}正确的程序:#include <stdio.h>void main(){int i,s;s=0; i=1;while(i<=100) //句尾不能有“;”{if(i%3==0&&i%7==0)s+=i;i=i+1;}printf(“s=%d”,s);}运行结果:S=2103、有一个分数序列:2/1、3/2、5/3、8/5、13/8、……,编写一个C程序,求出这个数列的前30项之和。

程序设计基础练习题(全部有答案版)

程序设计基础练习题(全部有答案版)

程序设计基础练习题(全部有答案版)程序设计基础练习题(全部有答案版)介绍:程序设计是计算机科学中的一门基础学科,它涉及到计算机程序的设计、编写和调试。

通过练习基础练习题,学生可以巩固和提高自己的程序设计能力。

本文将为您提供一些程序设计基础练习题,并附上答案,帮助您更好地理解和掌握程序设计的基本知识。

1. 基本输入输出题目描述:编写一个程序,要求用户输入两个数字,然后将这两个数字相加并输出结果。

```C++#include <iostream>int main() {int num1, num2, sum;std::cout << "请输入两个数字:" << std::endl;std::cin >> num1 >> num2;sum = num1 + num2;std::cout << "两个数字的和为:" << sum << std::endl;return 0;```2. 条件判断题目描述:编写一个程序,要求用户输入一个整数,然后判断该整数是否为偶数,并输出判断结果。

```Javaimport java.util.Scanner;public class Main {public static void main(String[] args) {Scanner scanner = new Scanner(System.in);int num;System.out.println("请输入一个整数:");num = scanner.nextInt();if (num % 2 == 0) {System.out.println("该整数是偶数。

");} else {System.out.println("该整数不是偶数。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1. 用 +-+-≈7
1513114π公式求π的近似值,直到发现某一项的绝对值小于10-6 为止(该项不累计加)。

#include <stdio.h>
#include <math.h>
int main()
{ int sign=1; double pi=0,n=1,term=1;
while(fabs(term)>=1e-6)
{ pi=pi+term;
n=n+2;
sign=-sign;
term=sign/n;
}
pi=pi*4;
printf("pi=%10.8f\n",pi);
return 0;
}
2. 输入一个大于3的整数n ,判定它是否素数(prime ,又称质数)
#include <stdio.h>
int main()
{ int n,i;
printf(“n=?"); scanf("%d",&n);
for (i=2;i<=n-1;i++)
if(n%i==0) break;
if(i<n) printf("%d is not\n",n);
else printf("%d is\n",n);
return 0;
}
#include <stdio.h>
int main()
{ int n,i,k;
printf(“n=?"); scanf("%d",&n);
k=sqrt(n);
for (i=2; i<=k; i++)
if(n%i==0) break;
if(i<=k) printf("%d is not\n",n);
else printf("%d is\n",n);
return 0;
}
3. 求100~200间的全部素数, 并控制换行。

#include "math.h"
main( )
{ int m, i, k, c=0; printf("\n");
for(m=101; m<200; m=m+2)
{ k=sqrt(m);
for(i=2; i<=k; i++)
if(m%i==0) break;
if(i>k) /*i>k成立表示未出现约数*/
{ printf("%-6d", m);
c++;
if(c%10==0)printf("\n"); }
}
}
4.用字符’*’打印出钻石图案
*
* * *
* * * * *
* * * * * * *
* * * * * 行空格星号
* * *
* 前四行规律:i 4–i i×2–1
后四行规律:i i 7–i×2 main( )
{ int i, j;
for(i=1; i<=4; i++)
{ for(j=4-i; j>0; j--) printf(” ”);
for(j=i*2-1; j>0; j--) printf(”*”);
printf(”\n”);
}
for(i=1; i<=3; i++)
{ for(j=i; j>0; j--) printf(” ”);
for(j=7-i*2; j>0; j--) printf(”*”);
printf(”\n”);
}
}
5. 求Fibonacci数列的前40个数,并按一行4个数
排列输出。

1,1,2,3,5,8,13,21 …
main( )
{ long f1, f2, i;
f1=f2=1;
for(i=1; i<=20; i++)
{ printf("%12ld%12ld", f1, f2);
if(i%2==0)printf("\n"); /*每行4项*/
f1=f1+f2; /*一次递推两项*/
f2=f2+f1;
}
getch( );}。

相关文档
最新文档