精华内容
下载资源
问答
  • C语言循环结构经典编程题

    千次阅读 多人点赞 2020-06-20 11:38:05
    1.求和S。 题目描述题目内容:求s=1+(1+2)+…+(1+2+3+…+n)值,其中n由键盘...3 找出最小值 (20分)本要求编写程序,找出给定一系列整数中最小值。 4 奇偶分家 (10分)给定N个正整数,请统计奇数和偶数各有多少个?

    1 求和S。
    题目描述题目内容:求s=1+(1+2)+…+(1+2+3+…+n)的值,其中n由键盘输入。
    输入样例:3
    输出样例10
    输入样例:8
    输出样例:120
    输入样例:0
    输出样例:Error!
    输入样例:-1
    输出样例:Error!
    题目运行时间限制: 500ms题目运行内存限制: 32000kb
    代码:

    #include<stdio.h>
    main(){
     int s=0,i,n,a=0,b=0;
     scanf("%d",&n);
     if(n<1) printf("Error!");
     else 
     {
         for (i=0;i<n;i++)
      {
        ++a;
        b+=a;
        s+=b;
      }
      printf("%d",s);
     }
    }

    2 追查车号。题目描述题目内容:一辆卡车违反交通规则,撞人逃逸。现场三人目击事件,但都没有记住车号,只记下车的一些特征。甲说:牌照的前两位数字是相同的;乙说:牌照的后两位数字是相同的;丙是位数学家,他说:四位的车号正好是一个整数的平方。请根据以上线索求出车号。输出格式:The number is ****。测试用例用例1分数: 20错误提示:题目运行时间限制: 500ms题目运行内存限制: 32000kb.
    代码:

    #include<stdio.h>
    main()
    {
     int a,b,i,j;
     for (i=1;i<10;i++)
      for(j=0;j<10;j++)
      {
       a=i*1000+i*100+j*10+j;
       for(b=10;b<100;b++)
        if(b*b==a)
         printf("The number is %d",a);
      }
    }

    3 找出最小值 (20分)本题要求编写程序,找出给定一系列整数中的最小值。
    输入格式:输入在一行中首先给出一个正整数n,之后是n个整数,其间以空格分隔。
    输出格式:在一行中按照“min = 最小值”的格式输出n个整数中的最小值。
    输入样例:4 -2 -123 100 0
    输出样例:min = -123
    代码:

    #include<stdio.h>
    int main()
    {
     int n,i,a,b;
      scanf ("%d %d",&n,&a); 
      for(i=1;i<n;i++){
        scanf (" %d",&b);
        if(a>b) a=b;
      }
      printf ("min = %d",a);
    }

    4 奇偶分家 (10分)给定N个正整数,请统计奇数和偶数各有多少个?
    输入格式:
    输入第一行给出一个正整N(≤1000);第2行给出N个非负整数,以空格分隔。
    输出格式:
    在一行中先后输出奇数的个数、偶数的个数。中间以1个空格分隔。
    输入样例
    9
    88 74 101 26 15 0 34 22 77

    输出样例:
    3 6
    代码:

    #include<stdio.h>
    int main()
    {
     int N,i,j=0,o=0,a;
      scanf("%d\n",&N);
     for (i=0;i<N;++i){
      scanf("%d",&a);
         if(a%2) j+=1;
      else o+=1;
     }
     printf("%d %d",j,o);
    }
    展开全文
  • 实验 3 循环结构程序设计 一实验目的 1掌握使用 while 语句 do-while 语句和 for 语句实现循环方法 2掌握在循环结构中使用 break 与 continue 语句方法 3掌握多重循环使用方法 二实验内容 1编写程序输出半径为...
  • 实验 3 循环结构程序设计 一实验目的 1掌握使用 while 语句 do-while 语句和 for 语句实现循环方法 2掌握在循环结构中使用 break 与 continue 语句方法 3掌握多重循环使用方法 二实验内容 1编写程序输出半径为...
  • 精品文档 简单 C 语言选择与循环结构 10 个编程练习 1以下程序输出结果是_ # include <stdio.h> void main){ int k; for (k=2;k;k++,k++) printf%d,k; } 2以下程序输出结果是_ # include <stdio.h> void ...
  • 精品文档 简单C语言选择与循环结构 10个编程练习 1以下程序输出结果是_ # include <stdio.h> void main){ int k; for (k=2;k;k++,k++) printf%d,k; } 2以下程序输出结果是_ # include <stdio.h> void main){...
  • ——循环结构的使用 1.问题重述 题目:打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个"水仙花数",因为153=1的三次方+5的...

    Java50道经典编程题:(三)打印水仙花数

    ——循环结构的使用

    1.问题重述

    题目:打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方。

    2.解析

    2.1如何提取出一个数的个位、十位、百位的数字?

    如果i是一个三位数,则:

    int bite = i % 10;//提取出个位数字
    int ten = i/10 % 10;//提取出十位数字
    int hundred = i/100;//提取出百位数字
    

    2.2java中的三次幂如何表示?

    使用Math.pow(底数,幂)表示。

    3.解决问题

    3.1解析思路

    • 使用for循环遍历判断。
    • 使用while或者do…while语句遍历判断。

    3.2代码

    3.2.1for循环

    public class demo {
    	public static void main(String[] args) {
    		int sum = 0;//统计水仙花数的个数
    		for(int i = 100 ;i <= 999;i++) {
    			int bite = i % 10;//提取出个位数字
    			int ten = i/10 % 10;//提取出十位数字
    			int hundred = i/100;//提取出百位数字
    			if(i == Math.pow(bite, 3) + Math.pow(ten, 3) + Math.pow(hundred, 3)) {//判断是否是水仙花数
    				System.out.println(i);
    				sum++;
    			}else {
    				
    			}
    		}
    		System.out.println("一共有" + sum + "个水仙花数");
    	}
    }
    
    

    3.2.2while语句

    public class demo {
    	public static void main(String[] args) {
    		int sum1 = 0;//统计水仙花数的个数
    		int n = 100;
    		while(n <= 999) {
    			int bite = n % 10;//提取出个位数字
    			int ten = n/10 % 10;//提取出十位数字
    			int hundred = n/100;//提取出百位数字
    			if(n == Math.pow(bite, 3) + Math.pow(ten, 3) + Math.pow(hundred, 3)) {//判断是否是水仙花数
    				System.out.println(n);
    				sum++;
    			}else {
    				
    			}
    			n++;
    		}
    		System.out.println("一共有" + sum1 + "个水仙花数");
    	}
    }
    
    展开全文
  • ——java循环结构和选择结构的综合使用 1.问题重述 题目:判断101-200之间有多少个素数,并输出所有素数。 2.解析 2.1什么是素数? 素数是:只能被1或本身整除的数。 2.2怎么判断素数? 判断素数的方法:用...

    Java50道经典编程题:(二)素数判断

    ——java循环结构和选择结构的综合使用

    1.问题重述

    题目:判断101-200之间有多少个素数,并输出所有素数。

    2.解析

    2.1什么是素数?

    素数是:只能被1或本身整除的数。

    2.2怎么判断素数?

    判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,则表明此数不是素数,反之则是素数。

    3.解决问题

    3.1思路解析

    • 主程序main用来记录素数的个数
    • 创建一个judge方法判断是否是素数

    3.2代码

    public class demo {
    	public static void main(String[] args) {
    		int sum = 0;
    		for(int i = 101; i <= 200; i++) {
    			if(judge(i)==1) {//使用judge方法判断i是否是素数
    				sum ++;
    				System.out.println(i);
    			}else {
    				
    			}
    		}
    		System.out.println("从101至200一共有" + sum + "个素数");
    	}
    	
    	public static int judge(int n) {
    		for(int i = 2; i <= Math.sqrt(n); i++) {//判断素数的方法:用一个数分别去除2到sqrt(这个数)
    			if(n%i == 0) {//如果可以整除,则不是素数,返回值为0
    				return 0;
    			}else {
    				
    			}
    		}
    		return 1;//循环结束,没有中途返回值,则为素数,返回值为1
    	}
    }
    
    
    展开全文
  • 实验五 循环结构程序设计 实验名称 循环结构程序设计 成绩 姓 名 学号 班级 实验地点 完成日期 一实验目的 1) 熟悉并掌握用 while 语句 do-while 语句和 for 语句实现循环方法 2) 掌握在程序设计中用循环方法...
  • 实验五 循环结构程序设计 实验名称 循环结构程序设计 成绩 姓 名 实验地点 学号 班级 完成日期 一实验目的 1) 熟悉并掌握用 while 语句 do-while 语句和 for 语句实现循环方法 2) 掌握在程序设计中用循环方法...
  • 沈阳师范大学大一上册C语言PTA题目集以及答案(第三章 循环结构程序设计 编程题篇) 7-1 求阶乘序列前N项和 (15分) 本题要求编写程序,计算序列 1!+2!+3!+⋯ 前N项之和。 输入格式: 输入在一行中给出一个不超过12...

    沈阳师范大学大一上册C语言PTA题目集以及答案(第三章 循环结构程序设计 编程题篇)

    7-1 求阶乘序列前N项和 (15分)
    本题要求编写程序,计算序列 1!+2!+3!+⋯ 的前N项之和。

    输入格式:
    输入在一行中给出一个不超过12的正整数N。

    输出格式:
    在一行中输出整数结果。

    输入样例:
    5
    输出样例:
    153
    作者
    C课程组
    单位
    浙江大学
    代码长度限制
    16 KB
    时间限制
    400 ms
    内存限制

    #include <stdio.h>
    
    int main(int argc, char *argv[]) {
    int n,i,j,suma=1,sumb=0;
    scanf("%d",&n);
    for(i=1;i<=n;i++)
    {
    	for(j=1;j<=i;j++)
    	{
    		suma=suma*j;
    		
    	}
    	sumb=sumb+suma;
    	suma=1;
    	
    }
    printf("%d",sumb);
    return 0;
    }
    

    7-2 统计学生平均成绩与及格人数 (15分)
    本题要求编写程序,计算学生们的平均成绩,并统计及格(成绩不低于60分)的人数。题目保证输入与输出均在整型范围内。

    输入格式:
    输入在第一行中给出非负整数N,即学生人数。第二行给出N个非负整数,即这N位学生的成绩,其间以空格分隔。

    输出格式:
    按照以下格式输出:

    average = 成绩均值
    count = 及格人数
    其中平均值精确到小数点后一位。

    输入样例:
    5
    77 54 92 73 60
    输出样例:
    average = 71.2
    count = 4

    #include <stdio.h>
    
    int main(int argc, char *argv[]) {
    	float b,c,d;
    	int sum,i,j,count=0;
    	float average;
    	scanf("%d",&i);
    	if(i==0)
    	{
    printf("average = 0.0\n");
    		printf("count = 0\n");
    		return 0;
    	}
    	int a[1000];
    	for(j=0;j<=i-1;j++)
    	{
    		scanf("%d",&a[j]);
    	}
    	for(j=0;j<=i-1;j++)
    		{
    			sum=sum+a[j];
    		}
    average=sum/(i*1.0);
    	for(j=0;j<=i-1;j++)
    		{
    			if((a[j]>60)||(a[j]==60))
    			
    			{
    				count=count+1;
    			}
    		}
    		printf("average = %.1f\ncount = %d",average,count);
    	return 0;
    }
    

    7-3 斐波那契(Fibonacci)数列前20项 (10分)
    输出斐波那契(Fibonacci)数列(1,1,2,3,5,8,13……)的前20项 链接

    输出格式:
    每个数输出占8列。

    输出样例:
    1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597 2584 4181 6765

    #include <stdio.h>
    
    int main(int argc, char *argv[]) {
    	int i,n=20,a=1,b=1,c,d=0;
    		for (i=1;i<=n; ++i)
    		{
    			{printf("%8d",a);
    			c=a+b;
    			a=b;
    			b=c;
    			d++;
    			}
    			
    		}
    		return 0;
    }
    

    7-4 求 1-3+5……-99+101 的值 (10分)
    求 1-3+5-7+……-99+101 的值。

    输出格式:
    在一行中按照格式“s= result”顺序输出计算结果。

    输出样例:
    s=51

    #include <stdio.h>
    
    int main(int argc, char *argv[]) {
    
        int a,b,c=1,s;
        a=5,b=10;
    for(;a<=101;)
    {
    {
    	c=c+(a-(a-2));
    	a=a+4;
    }
    
    
    }
    printf("s=%d",c);
    
    
    
    
    }
    

    7-5 求n! (10分)
    求n!,n和运算结果均为整数,n<10。

    输入格式:
    直接输入一个n值,没有其它任何附加字符。

    输出格式:
    直接输出结果,没有其它附加格式和字符。

    输入样例:
    5
    输出样例:
    120

    #include <stdio.h>
    
    int main(int argc, char *argv[]) {
    	int n,i,c=1;
    	scanf("%d",&n);
    	for(i=1;i<=n;i++)
    	{
    		c=c*i;
    	}
    	printf("%d",c);
    	
    }
    

    7-6 统计英文字母和数字字符 (15分)
    本题要求编写程序,输入10个字符,统计其中英文字母、数字字符和其他字符的个数。

    输入格式:
    输入为10个字符。最后一个回车表示输入结束,不算在内。

    输出格式:
    在一行内按照

    letter = 英文字母个数, digit = 数字字符个数, other = 其他字符个数
    的格式输出。请注意,等号的左右各有一个空格,逗号后有一个空格。

    输入样例1:
    Reold 123?
    输出样例1:
    letter = 5, digit = 3, other = 2
    输入样例2:
    aZ &
    09 Az
    输出样例2:
    letter = 4, digit = 2, other = 4

    	#include<stdio.h>
    	int main(){
    		char arr[10];
    		int i,letter=0,digit=0,other=0;
    		for(i=0;i<10;i++)
    	    arr[i]=getchar();
    		for(i=0;i<10;i++){
    			if(arr[i]>='0'&&arr[i]<='9') digit++;
    			else if(((arr[i]>='a')&&(arr[i]<='z'))||((arr[i]>='A')&&(arr[i]<='Z'))) letter++;
    			else other++;
    		}
    		printf("letter = %d, digit = %d, other = %d",letter,digit,other);
    		return 0;
    	}
    

    7-7 吃鱼还是吃肉 (10分)
    fish.JPG 肉.JPG
    在这里插入图片描述

    国家给出了 8 岁男宝宝的标准身高为 130 厘米、标准体重为 27 公斤;8 岁女宝宝的标准身高为 129 厘米、标准体重为 25 公斤。

    现在你要根据小宝宝的身高体重,给出补充营养的建议。

    输入格式:
    输入在第一行给出一个不超过 10 的正整数 N,随后 N 行,每行给出一位宝宝的身体数据:

    性别 身高 体重
    其中性别是 1 表示男生,0 表示女生。身高和体重都是不超过 200 的正整数。

    输出格式:
    对于每一位宝宝,在一行中给出你的建议:

    如果太矮了,输出:duo chi yu!(多吃鱼);
    如果太瘦了,输出:duo chi rou!(多吃肉);
    如果正标准,输出:wan mei!(完美);
    如果太高了,输出:ni li hai!(你厉害);
    如果太胖了,输出:shao chi rou!(少吃肉)。
    先评价身高,再评价体重。两句话之间要有 1 个空格。

    输入样例:
    4
    0 130 23
    1 129 27
    1 130 30
    0 128 27
    输出样例:
    ni li hai! duo chi rou!
    duo chi yu! wan mei!
    wan mei! shao chi rou!
    duo chi yu! shao chi rou!

    #include <stdio.h>
    
    int main(int argc, char *argv[]) {
    	int i,j,k=0,l;
    	scanf("%d",&i);
    	int a[i][3];
    	for(j=0;j<=(i-1);j++)
    	{
    		scanf("%d %d %d",&a[j][0],&a[j][1],&a[j][2]);
    		
    	}
    	/*for(j=0;j<=(i-1);j++)
    	{
    		printf("%d %d %d\n",a[j][0],a[j][1],a[j][2]);
    	}*/
    	for(j=0;j<=(i-1);j++)
    	{
    		if(a[j][0]==1)
    		{
    			if(a[j][1]==130)
    			{
    				printf("wan mei!");
    			}
    			if(a[j][1]>130)
    			{
    				printf("ni li hai!");
    			}
    			if(a[j][1]<130)
    			{
    				printf("duo chi yu!");
    			}
    			if(a[j][2]==27)
    			{
    				printf(" wan mei!");
    			}
    			if(a[j][2]>27)
    			{
    				printf(" shao chi rou!");
    			}
    			if(a[j][2]<27)
    			{
    				printf(" duo chi rou!");
    			}
    			
    		}
    		if(a[j][0]==0)
    		{
    		 if(a[j][1]==129)
    		{
    			printf("wan mei!");
    		}
    		 if(a[j][1]>129)
    		{
    			printf("ni li hai!");
    		}
    		 if(a[j][1]<129)
    		{
    			printf("duo chi yu!");
    		}
    		 if(a[j][2]==25)
    		{
    			printf(" wan mei!");
    		}
    		 if(a[j][2]>25)
    		{
    			printf(" shao chi rou!");
    		}
    		 if(a[j][2]<25)
    		{
    			printf(" duo chi rou!");
    		}
    		}
    		printf("\n");
    		
    	}
    }
    
    展开全文
  • 使用好for循环,即可解决问题,一个for循环用来计算和,一个for循环用来计算阶乘结果,注意循环的次数就可以轻松解决。 3.解决问题 代码如下: public class demo { public static void main(String[] args) { ...
  • pascal循环结构练习

    2018-10-23 09:29:16
    pascal循环结构的练习,如 一百匹马驮一百块瓦,一匹大马可以驮3块,一匹母马可驮2块,小马2匹可驮1块。试编程求需要各种马多少匹?
  • 使用两个for循环遍历即可,注意换行时条件关系。 3.解决问题 代码如下: public class demo { public static void main(String[] args) { for (int i = 1; i &lt;= 9;i++) { for (int j = 1; j &lt;=...
  • 2.2循环调整问题 当寻找到最小质因数时,调整此时数字为该数除以已找到最小质因数。如:n = n / i;(n为输入数字,i为最小质因数) 2.3判断跳出循环体 当该数为质数或找到最后一个质因数时,...
  • 使用for循环打印相应数目*即可。 3.解决问题 代码如下: import java.util.Scanner; // 题目:读取7个数(1—50)整数值,每读取一个值,程序打印出该值个数*。 public class demo { public static void ...
  • 注意for循环的逆序输出时变量设置是否合理即可。 3.解决问题 代码如下: //题目:将一个数组逆序输出。 public class demo { public static void main(String[] args) { int[] array = new int[] {1,2,3,4,5}; ...
  • 从键盘上输入一个大写字母,将该大写字母转换成小写字母并输出二、选择结构程序设计1.从键盘输入一元二次方程三个系数,输出解2.已知x,y均为大于1正整数,且x一、输入与输出 1.输入一矩形长和
  • 使用三个嵌套for循环,再最里层for循环中使用if语句判断。 2.2如何输出这些数字? System.out.println(百位数字100 + 十位数字10 + 个位数字); 3.解决问题 代码如下: public class demo { public ...
  • 1.问题重述 题目:一个数如果恰好等于它因子之和,...使用for循环时,使内层变量j大小小于外层变量i大小即可。 3.解决问题 代码如下: public class demo { public static void main(String[] args) { i...
  • 我们可以对于要前移后面几位数据新建一个小数组进行另存,然后注意顺序将前面数字后移,之后再通过新建数组,将原来后面数据进行前移赋值。 3.解决问题 代码如下: // 题目:有n个整数,使其前面各数顺序...
  • 使用求余符号%依次取出数字各个位置位数,然后再用for循环遍历输出特定几位数数字。 3.解决问题 代码如下: //题目:取一个整数a从右端开始4~7位。 public class demo { public static void main(String[]...
  • 题目:求s=a+aa+aaa+aaaa+aa…a值,其中a是一个数字。例如输入2与5,则输出:2+22+222+2222+22222(此时共有5个数相加),几个数相加由键盘控制。输入2与3,则输出结果形式如:2+22+222=246; 2.解析 2.1如何把每...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 981
精华内容 392
关键字:

循环结构的编程题