C语言20道编程题操作题示例

合集下载

C语言编程题目

C语言编程题目

h 1、编程实现:从键盘输入3个变量的值,其中中a=5,b=6,c=7,然后将3个变量的值进行交换,使得a=6,b=7,c=5.#include"stdio.h"void main(){int a,b,c,m;printf("Enter a,b,c:");scanf("%d,%d,%d",&a,&b&c);m=a;a=b;b=c;c=m;printf("a=%d,b=%d,c=%d\n",a,b,c);}2、编程实现:输入任意一个3位数,将其各位数字反序输出(例如:输入123,输出321)。

#include"stdio.h"void main(){int a,b,c,x,y;printf("输入一个3位数:\n");scanf("%d",&x);h a=x%10;b=x/100;c=x%100/10;y=a*100+c*10+b;printf("%d\n",y);}3、编程实现:输入三角形的边长,求三角形面积(面积=sqrt(s(s-a)(s-b)(s-c)),s=(a+b+c)/2.#include<stdio.h>#include<math.h>void main(){int a,b,c;float x,y;scanf("%d,%d,%d",&a,&b,&c);x=(a+b+c)/2;y=sqrt(s*(s-a)*(s-b)*(s-c));printf("%.3f\n",y);}4、编程实现:从键盘上输入一个年月日,要求出该天是该年的第几天(注意判断该年是否是闰年)。

#include<stdio.h>void main(){inta,b,c;printf("输入一个年月日:"); scanf("%d%d%d",&a,&b,&c);if(a%4==0||a%100==0)switch(b){case 1: printf("%d\n",c);break; case 2: printf("%d\n",31+c);break; case 3: printf("%d\n",60+c);break; case 4:printf("%d\n",91+c);break; case 5:printf("%d\n",121+c);break; case 6:printf("%d\n",152+c);break; case 7:printf("%d\n",182+c);break; case 8:printf("%d\n",213+c);break; case 9: printf("%d\n",244+c);break; case 10: printf("%d\n",274+c);break; case 11: printf("%d\n",305+c);break; case 12: printf("%d\n",335+c);break; }elseswitch(b){case 1: printf("%d\n",c);break;case 2: printf("%d\n",31+c);break;case 3: printf("%d\n",59+c);break;case 4: printf("%d\n",90+c);break;case 5: printf("%d\n",120c);break;case 6: printf("%d\n",151+c);break;case 7: printf("%d\n",181+c);break;case 8: printf("%d\n",212+c);break;case 9: printf("%d\n",243+c);break;case 10: printf("%d\n",273+c);break;case 11: printf("%d\n",304+c);break;case 12: printf("%d\n",334+c);break;}}5、求∑n!(1!+2!+3!+...+25!)。

40个C语言的基础编程题

40个C语言的基础编程题

{ sn=sn+2*hn;/*第 n 次落地时共经过的米数*/ hn=hn/2; /*第 n 次反跳高度*/ printf("the total of road is %f\n",sn); printf("the tenth is %f meter\n",hn);} }
再加上 168 又是一个完全平方数, 请问该数是多少? 1.程序分析:在 10 万以内判断,先将该数加上 100 后再开方,再将该数加上 268 后再开方,如果开方后 的结果满足如下条件,即是结果。请看具体分析: 2.程序源代码: #include "math.h" main() { long int i,x,y,z; for (i=1;i<100000;i++) { x=sqrt(i+100); 果*/ y=sqrt(i+268); 结果*/ if(x*x==i+100&&y*y==i+268)/*如果一个数的 平方根的平方等于该数,这说明此数是完全平方数*/ printf("\n%ld\n",i); }} ======================================== 【程序 12】 题目:输入三个整数 x,y,z,请把这三个数由小到大 输出。 1.程序分析:我们想办法把最小的数放到 x 上,先将 x 与 y 进行比较, 如果 x>y 则将 x 与 y 的值进行交换, 然后再用 x 与 z 进行比较, 如果 x>z 则将 x 与 z 的值 进行交换,这样能使 x 最小。 2.程序源代码: main() {int x,y,z,t; /*以下为三重循环*/ scanf("%d%d%d",&x,&y,&z); if (x>y) {t=x;x=y;y=t;} /*交换 x,y 的值*/ /*确保 i、j、 if(x>z) {t=z;z=x;x=t;}/*交换 x,z 的值*/ if(y>z) {t=y;y=z;z=t;}/*交换 z,y 的值*/ printf("small to big: %d %d %d\n",x,y,z);} ======================================== 【程序 13】 题目:用*号输出字母 C 的图案。 /*y 为再加上 168 后开方后的 /*x 为加上 100 后开方后的结

C语言编程例题

C语言编程例题

C语言编程例题1编程:由键盘输入两个整型变量a和b的值。

编程计算并输出a 与b的和、差、积、商、a除以b的余数、a b的值。

输入输出参考示例如下:提示:用到C语言的运算符(参见P52)+、-、*、/、%、函数pow()(参见附录C P385)请输入a,b的值:a=3,b=2a+b=5a-b=1a*b=6a/b=1a%b=1a^b=92、编程:求一元二次方程ax2+bx+c=0的实根x1,x2,。

a,b,c的值由键盘输入,设b2-4ac>0。

输入输出示例如下:请输入三个系数a,b,c的值:a=1,b=3,c=2x1=-1.00x2=-2.003、由键盘输入一个圆柱体的底面半径r和高度h的值,编程计算并输出该圆柱体的体积。

(注意:体积=底面积*高,要求将圆周率定义为符号常量PI)4、编写程序,从键盘输入两个数字字符并分别存放在字符型变量a和b中,要求通过程序将与这两个字符对应的数字相加后输出,例如,输入字符型数字7和5,输出的则是整型数12。

5、判断用户从键盘输入的任意一个字符是数字字符、字母字符还是其他字符,要求有必要的输入提示和输出信息;如果输入的是英文字母,再利用switch语句判断该字母是否是元音字母,并以“yes”或“no”字样输出判断结果。

6、编程实现:任意输入一个百分制成绩,输出成绩等级A、B、C、D。

当输入的分数小于0分或大于100分时,显示出错信息;在85~100分时为A,70~84分为B,55~69分为C,55分以下为D。

7、编写程序:从键盘输入x,利用幂级数展开计算sinx的近似值,要求误差小于10-6。

c语言c操作题库及详解答案

c语言c操作题库及详解答案

c语言c操作题库及详解答案C语言C操作题库及详解答案1. 请编写一个C程序,实现两个整数的加法运算,并输出结果。

答案:```c#include <stdio.h>int main() {int num1, num2, sum;printf("请输入两个整数:");scanf("%d %d", &num1, &num2);sum = num1 + num2;printf("两个整数相加的结果是:%d\n", sum);return 0;}```2. 编写一个C程序,实现字符串的复制功能。

答案:```c#include <stdio.h>#include <string.h>int main() {char src[] = "Hello, World!";char dest[50];strcpy(dest, src);printf("复制后的字符串是:%s\n", dest);return 0;}```3. 请编写一个C程序,实现求一个整数的阶乘。

答案:```c#include <stdio.h>int factorial(int n) {if (n == 0)return 1;elsereturn n * factorial(n - 1);}int main() {int num;printf("请输入一个整数:");scanf("%d", &num);printf("%d的阶乘是:%d\n", num, factorial(num)); return 0;}```4. 编写一个C程序,实现判断一个数是否为素数。

答案:```c#include <stdio.h>#include <math.h>int isPrime(int n) {if (n <= 1)return 0;for (int i = 2; i <= sqrt(n); ++i) { if (n % i == 0)return 0;}return 1;}int main() {int num;printf("请输入一个整数:");scanf("%d", &num);if (isPrime(num))printf("%d是素数。

C语言程序金典例题20题

C语言程序金典例题20题

C语言程序金典例题20题1.编写一个C程序,计算0-100之间全部的奇数之和。

#includemain(){int i=1,sum=0;for(;i<=100;){s=s+i;i=i+2;}printf("sum=%d",sum);}2.编程实现表达式a*=a+b%c,其中a=2,b=3,c=4#includemain(){int a, b, c;printf(“qingshuru3geshu”,a,b,c);scanf(“%d%d%d”,&a,&b,&c);a*=a+b%c;printf(“a=%d\n”,a);return 0;3.有4个整数a,b,c,d要求按由小到大的顺序输出#includevoid main(){int a,b,c,d,t;scanf("%d%d%d%d",&a,&b,&c,&d);if(a>b) {t=a;a=b;b=t;}if(a>c) {t=a;a=c;c=b;}if(a>d) {t=a;a=d;d=t;}if(b>c) {t=b;b=c;c=t;}if(b>d) {t=b;b=d;d=t;}if(c>d) {t=c;c=d;d=t;}printf("%d %d %d %d\n",a,b,c,d);}冒泡法数组:#includevoid main(){int a[4],i,j,t;for(i=0;i<4;i++)scanf("%d",&a[i]);for(i=1;i<4;i++)for(j=0;j<4-i;j++)if(a[j]>a[j+1]){t=a[j];a[j]=a[j+1];a[j+1]=t;}for(i=0;i<4;i++) printf("%d ",a[i]);}4、输入三个数字,输出他们的最大值。

C语言编程题及答案(精心整理)

C语言编程题及答案(精心整理)

)(*)(*)(*c s b s a s s ---C 语言编程题1.(*)求分数序列:1/2,2/3,3/5,5/8,8/13,13/21...... 前20项的和。

main(){float i=1,j=2,t=0,s,n,m;for(n=1;n<=20;n++)s=i/j,m=i,i=j,j=m+j,t=t+s;printf("t=%f",t);}2.(*)从键盘输入一个字符串,再将其逆序输出。

(如:输入abcde ,输出edcba ) main(){int i;char c[10];scanf("%s",c);for(i=9;i>=0;i--)printf("%c",c[i]);}3.(*)已知abc+cba=1333,其中a 、b 、c 均为一位数,例如:617+716=1333, 518+815=1333, 试编程求出符合这一规律的a 、b 、c ,并输出结果。

main(){int a,b,c,x,y;for(a=1;a<=9;a++)for(b=0;b<=9;b++)for(c=1;c<=9;c++){ x=100*a+10*b+c;y=100*c+10*b+a;if(x+y==1333)printf("x=%d,y=%d",x,y);}}4.(*)利用海伦公式求三角形面积,三边长a,b,c 由键盘输入。

若输入的三边长不能构成 三角形,输出相应提示信息。

海伦公式如下:其中s=(a+b+c)/2三角形面积= #include"math.h"main(){ float a,b,c,s,area;scanf("%f,%f,%f",&a,&b,&c);s=(a+b+c)/2;area=sqrt(s*(s-a)*(s-b)*(s-c));if(a+b>c&&a+c>b&&b+c>a)printf("area=%f",area);else.1 .printf("no");}5.(*)编程求出1!+2!+3!+…+8!+9!+10!的值并输出。

C语言练习题(带详解答案)

C语言练习题(带详解答案)

1、编程题1.输入2个整数,求两数的平方和并输出。

#include <stdio.h>int main(void){ intt a ,b,s;printf("please input a,b:\n");scanf("%d%d”,&a,&b);s=a*a+b*b;printf("the result is %d\n",s);return 0;}2. 输入一个圆半径r,当r>=0时,计算并输出圆的面积和周长,否则,输出提示信息。

#include <stdio.h>#define PI 3.14int main(void){ double r ,area , girth;printf("please input r:\n");scanf("%lf",&r);if (r>=0){ area =PI*r*r;girth =2*PI*r ;printf("the area is %.2f\n", area);printf("the girth is %.2f\n", girth);}elseprintf("Input error!\n");return 0;}3、已知函数y=f(x),编程实现输入一个x值,输出y值。

2x+1 (x<0)y= 0 (x=0)2x-1 (x>0)#include <stdio.h>void main(){ int x,y;scanf(“%d”,&x);if(x<0) y=2*x+1;else if(x>0) y=2*x-1;else y=0;printf(“%d”,y);}4.从键盘上输入一个百分制成绩score,按下列原则输出其等级:score≥90,等级为A;80≤score<90,等级为B;70≤score<80,等级为C;60≤score<70,等级为D;score<60,等级为E。

C语言经典编程100题(答案版)

C语言经典编程100题(答案版)

C语言经典程序100题(答案版)【程序1】题目:企业发放的奖金根据利润提成。

利润(I)低于或等于10万元时,奖金可提10%;利润高于10万元,低于20万元时,低于10万元的部分按10%提成,高于10万元的部分,可可提成7.5%;20万到40万之间时,高于20万元的部分,可提成5%;40万到60万之间时高于40万元的部分,可提成3%;60万到100万之间时,高于60万元的部分,可提成1.5%,高于100万元时,超过100万元的部分按1%提成,从键盘输入当月利润I,求应发放奖金总数?1.程序分析:请利用数轴来分界,定位。

注意定义时需把奖金定义成长整型。

2.程序源代码:1.#include"stdio.h"2.#include"conio.h"3.main()4.{5.long int i;6.int bonus1,bonus2,bonus4,bonus6,bonus10,bonus;7.scanf("%ld",&i);8.bonus1100000*0.1;9.bonus2bonus1+100000*0.75;10.bonus4bonus2+200000*0.5;11.bonus6bonus4+200000*0.3;12.bonus10bonus6+400000*0.15;13.if(i<100000)14.bonus i*0.1;15.else if(i<200000)16.bonus bonus1+(i-100000)*0.075;17.else if(i<400000)18.bonus bonus2+(i-200000)*0.05;19.else if(i<600000)20.bonus bonus4+(i-400000)*0.03;21.else if(i<1000000)22.bonus bonus6+(i-600000)*0.015;23.else24.bonus bonus10+(i-1000000)*0.01;25.printf("bonus%d",bonus);26.getch();27.}【程序2】题目:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?1.程序分析:可填在百位、十位、个位的数字都是1、2、3、4。

c语言20题上机题目

c语言20题上机题目

c语言20题上机题目1.计算球体积Problem Description根据输入的半径值,计算球的体积。

Input输入数据有多组,每组占一行,每行包括一个实数,表示球的半径。

Output输出对应的球的体积,对于每组输入数据,输出一行,计算结果保留三位小数。

Sample Input1 1.5Sample Output4.189 14.1372.成绩转换Problem Description输入一个百分制的成绩t,将其转换成对应的等级,具体转换规则如下:90~100为A;80~89为B;70~79为C;60~69为D;0~59为E;Input输入数据有多组,每组占一行,由一个整数组成。

Output对于每组输入数据,输出一行。

如果输入数据不在0~100范围内,请输出一行:“Score is error!”。

Sample Input56 67 100 123Sample OutputE D A Score is error!3.第几天?Problem Description给定一个日期,输出这个日期是该年的第几天。

Input输入数据有多组,每组占一行,数据格式为YYYY/MM/DD组成,具体参见sample input ,另外,可以向你确保所有的输入数据是合法的。

Output对于每组输入数据,输出一行,表示该日期是该年的第几天。

Sample Input1985/1/20 2006/3/12Sample Output20 714.求奇数的乘积Problem Description给你n个整数,求他们中所有奇数的乘积。

Input输入数据包含多个测试实例,每个测试实例占一行,每行的第一个数为n,表示本组数据一共有n个,接着是n个整数,你可以假设每组数据必定至少存在一个奇数。

Output输出每组数中的所有奇数的乘积,对于测试实例,输出一行。

Sample Input3 1 2 34 2 3 4 5Sample Output3 155.平方和与立方和Problem Description给定一段连续的整数,求出他们中所有偶数的平方和以及所有奇数的立方和。

C语言编程题带答案

C语言编程题带答案

C语言编程题带答案题目 1:求两个整数的最大值```cinclude <stdioh>int max(int num1, int num2) {if (num1 > num2) {return num1;} else {return num2;}}int main(){int num1 = 10, num2 = 20;int maxValue = max(num1, num2);printf("最大值为: %d\n", maxValue);return 0;}```分析:在这个程序中,我们定义了一个名为`max` 的函数,它接受两个整数参数`num1` 和`num2` 。

通过使用条件判断语句`if` 来比较这两个数的大小,如果`num1` 大于`num2` ,则返回`num1` ,否则返回`num2` 。

在`main` 函数中,我们给定了两个整数`num1` 和`num2` 的值,并调用`max` 函数来获取它们中的最大值,最后使用`printf` 函数将最大值输出到控制台。

题目 2:计算一个整数数组的平均值```cinclude <stdioh>float average(int arr, int size) {int sum = 0;for (int i = 0; i < size; i++){sum += arri;}return (float)sum / size;}int main(){int arr ={10, 20, 30, 40, 50};int size = sizeof(arr) / sizeof(arr0);float avg = average(arr, size);printf("平均值为: %2f\n", avg);return 0;}```分析:在这个程序中,首先在`average` 函数里,我们初始化一个变量`sum` 为 0 ,用于存储数组元素的总和。

简单的C语言编程题例题

简单的C语言编程题例题

1、编写程序,把560分钟换算成用小时和分钟表示,然后输出。

解:其所编程序如下#include"stdio.h"void main(){int a=560,b=60,c,d;c=a/b;d=a%b;printf("560分钟=%d小时%d分钟",c,d);}2、编写程序,输入两个整数:1500和350,求出它们的商和余数并进行输出。

解:所编程序如下#include"stdio.h"void main(){int a,b,c,d;printf("Input two numbers:");scanf("%d%d",&a,&b);c=a/b;d=a%b;printf("c=%d,d=%d\n",c,d);}3、编写程序,读入三个双精度数,求出它们的平均值并保留此平均值小数点后一位数,对小数点后的第二位数进行四舍五入,最后输出结果。

解:所编程序如下#include"stdio.h"void main(){double a,b,c,ave;printf("Enter three numbers:");scanf("%lf%lf%lf",&a,&b,&c);ave=(a+b+c)/3;printf("(1)ave=%f\n",ave);ave=(int)(ave*10+0.5)/10.0;printf("(2)ave=%f\n",ave);}4、编写程序,读入三个整数给a、b、c,然后交换它们中的数,把a 中原来的值给b,把b中原来的值给c,把c中原来的值给a,然后输出a、b、c。

解:所编程序如下#include"stdio.h"void main(){int a,b,c,m,n,t;printf("Enter three numbers:");scanf("%d%d%d",&a,&b,&c);printf("a=%d,b=%d,c=%d\n",a,b,c);m=a;n=b;t=c;b=m;c=n;a=t;printf("a=%d,b=%d,c=%d",a,b,c);}5、编写程序,输入一位学生的生日(年:y0、月:m0、日:d0),并输入当前的日期(年:y1、月:m1、日:d1),输出该生的实际年龄。

100个经典C语言编程例子(答案另附)

100个经典C语言编程例子(答案另附)

100个经典C语言编程例子(答案另附)1:计算 A+B 的问题时间限制:1000MS 内存限制:10000K总提交数:1347 正确数:655问题描述输入两个整数 a 和 b ,计算 a+b 的结果并输出。

输入两个整数输出一个整数输入样例1 2输出样例32:Hello World!时间限制:1000MS 内存限制:65536K总提交数:848 正确数:693问题描述编写第一个C语言程序。

在屏幕上输出:Hello World!输入程序没有输入输出Hello World!输入样例输出样例Hello World!提示1、输出的内容要与题目的要求完全一样,不能多字符也不能少字符。

3:两个整数的值互换时间限制:1000MS 内存限制:65536K总提交数:1235 正确数:530问题描述输入两个整数a,b ,将 a 和 b 的值互换,并输出。

例如:输入: 2 5输出: 5 2输入两个整数输出两个整数输入样例2 5输出样例5 2提示注意输入和输出的格式,两个数据之间用一个空格隔开。

问题来源4:计算三门课程总分和平均分时间限制:1000MS 内存限制:65536K总提交数:1190 正确数:482问题描述输入三门课程的成绩,输出总分和平均分。

要求:(1)输入三个数,用空格隔开。

输入的数可以是小数。

(2)输出两个数,用空格隔开。

输出的数保留两位小数。

例如:输入: 75 80 90输出: 245.00 81.67 输入输入三个数,用空格隔开。

输入的数可以是小数。

输出输出两个数,用空格隔开。

输出的数保留两位小数。

输入样例75 80 90输出样例245.00 81.67问题来源5:鸡兔同笼问题时间限制:1000MS 内存限制:65536K总提交数:872 正确数:443问题描述这个问题,是我国古代著名趣题之一。

大约在1500年前,《孙子算经》中就记载了这个有趣的问题。

书中是这样叙述的:“今有鸡兔同笼,上有三十五头,下有九十四足,问鸡兔各几何?这四句话的意思是:有若干只鸡兔同在一个笼子里,从上面数,有35个头;从下面数,有94只脚。

c语言高级编程题

c语言高级编程题

以下是一些C语言高级编程题目示例,您可以尝试解答或用于练习:
题目1 计算不同类型数据的字节大小
编写一个C程序,计算并输出int、float、double和char类型在当前编译器下的存储字节数。

c代码:
题目2 完数查找
编写一个C程序,找出1000以内的所有完数(一个数如果恰好等于它的因子之和,这个数就称为“完数”)。

例如:6 = 1 + 2 + 3。

c代码:
题目3 自由落体反弹问题
编写程序模拟一球从100米高度自由落下,每次落地后反跳回原高度的一半,直到第10次落地时,计算总路程以及第10次反弹的高度。

c代码:
请根据您的学习进度和理解程度选择适合自己的题目进行练习。

C语言20道编程题操作题示例

C语言20道编程题操作题示例

1.题目标题:四位反序数题目描述:设N是一个四位数,它的n倍恰好是其反序数(例如:123的反序数是321),编程,输出一个满足条件的N。

(知识点:控制语句)输入描述:输入为一个整形数n(2<=n<=9)输出描述:输出为一个四位数的整形数样式输入:9样式输出:1089#include<stdio.h>main(){int n,g,s,b,q,i;scanf("%d",&n);for(i=1000;i<10000;i++){q=i/1000;b=i/100%10;s=i/10%10;g=i%10;if(i*n==q+b*10+s*100+g*1000)printf("%d\n",i);}}2. 题目标题:年龄分组题目描述:统计各年龄段的人数。

N(N=20)个年龄通过键盘输入,并放在age数组中;要求函数把0至9岁年龄段的人数放在d[0]中,把10至19岁年龄段的人数放在d[1]中, 把20至29岁年龄段的人数放在d[2]中, 其余依此类推, 把100岁 (含100)以上年龄的人数都放在d[10]中。

依次输出d[0]至d[10]。

输入描述:输入为20个正整数;输出描述:输出为11个正整数;样式输入:1 2 11 12 22 23 33 34 44 45 55 56 66 67 68 88 99 100 101 102 样式输出:2 2 2 2 2 23 0 1 1 3#include<stdio.h>main(){int i,age[20],d[11]={0};for(i=0;i<20;i++)scanf("%d",&age[i]);for(i=0;i<20;i++)switch(age[i]/10){case 0: d[0]++; break;case 1: d[1]++; break;case 2: d[2]++; break;case 3: d[3]++; break;case 4: d[4]++; break;case 5: d[5]++; break;case 6: d[6]++; break;case 7: d[7]++; break;case 8: d[8]++; break;case 9: d[9]++; break;default: d[10]++; break;}for(i=0;i<=10;i++)printf("%d\n",d[i]);}3.题目标题:求三个整数的最大公约数题目描述:对任意三个整数,求它们的最大公约数输入描述:三个整数a,b,c输出描述:a,b,c的最大公约数样式输入:4 24 32样式输出:4#include<stdio.h>int gcd(int n,int m){if(m==0) return n;return gcd(m,n%m);}int main(){int x,y,z;scanf("%d%d%d",&x,&y,&z);printf("%d",gcd(gcd(x,y),z));return 0;}4.题目标题:发放奖金题目描述:某车间按工人加工零件的数量发放奖金,奖金分为五个等级:每月加工零件数N < 100者奖金为10元;100 < = N < 110者奖金为30元;110 < = N <120 者奖金为50元;120 < = N <130 者奖金为70元;N > 130者奖金为80元。

经典C语言编程(20题)

经典C语言编程(20题)

1.请编写一个函数fun,其功能是:删除字符串中的数字字符。

例如,输入字符串为:48CTYP9R6,则输出:CTYPR。

部分源程序已经给出,请勿改动主函数的内容。

main(){ char item[100];gtes(item);fun(item);printf(“The string:%s\n”,item);}解答:#include<stdio.h>#include<string.h>void fun(char s[]){int i,j;for(i=j=0;s[i]!='\0';i++)if(s[i]>='0' && s[i]<='9') i++;elses[j++]=s[i]; s[j]='\0';}main(){ char item[100];gets(item);fun(item);printf("The string:%s\n",item); }2. 从键盘上读入一字符串存入字符数组xx中,请编制函数encryptChar(),按给定的替代关系对数组xx中的所有字符进行替代,仍存入数组xx的对应位置上,最后调用函数WriteDat()将结果xx输出。

替代关系如下:f(p)=p*11%256其中,p是数组xx中某一个字符的ASCII值,f(p)是计算后新字符的ASCII值),如果原字符的ASCII值是偶数或计算后f(p)值小于32,则该字符不变,否则用f(p)所对应的字符进行替代。

设字符串的长度小于80个字符,部分源程序已给出。

除增加必要的数据定义、函数参数外,请勿改动主函数的内容。

#include <stdio.h>main(){ char xx[80];gets(xx);encryptChar();WriteDat();}解答:#include<stdio.h>#include<string.h>void encryptChar(char a[]) {int i,j;for(i=j=0;a[i]!='\0';i++) if(a[i]%2==0 ||(a[i]*11%256<32))a[j++]=a[i];elsea[j++]=a[i]*11%256; } WriteDat(char a[]) {puts(a);}main(){ char xx[80];gets(xx);encryptChar(xx); WriteDat(xx);} _3. 设有数组:int a[10]={6012,5099,9012,7025,8088,9096,8080,3046,5082,2345};请编制函数jssort(),其功能是:要求按每个数的后三位的大小进行升序排序,然后调用函数WriteDat()将结果输出。

c语言实操题

c语言实操题

c语言实操题1. 编写一个C程序,要求用户输入两个整数,然后输出它们的和。

```c#include <stdio.h>int main() {int num1, num2, sum;printf("请输入两个整数:\n");scanf("%d %d", &num1, &num2);sum = num1 + num2;printf("它们的和为:%d\n", sum);return 0;}```2. 编写一个C程序,要求用户输入一个整数,然后输出它的绝对值。

```c#include <stdio.h>int main() {int num, absValue;printf("请输入一个整数:\n");scanf("%d", &num);if (num >= 0) {absValue = num;} else {absValue = -num;}printf("它的绝对值为:%d\n", absValue);return 0;}```3. 编写一个C程序,要求用户输入一个字符,然后判断该字符是大写字母、小写字母还是数字。

```c#include <stdio.h>int main() {char ch;printf("请输入一个字符:\n");scanf(" %c", &ch);if (ch >= 'A' && ch <= 'Z') {printf("该字符是大写字母\n");} else if (ch >= 'a' && ch <= 'z') {printf("该字符是小写字母\n");} else if (ch >= '0' && ch <= '9') {printf("该字符是数字\n");} else {printf("该字符不是大写字母、小写字母或数字\n");}return 0;}```4. 编写一个C程序,要求用户输入一个正整数n,然后计算并输出从1到n的累加和。

100个经典C语言编程例子(答案另附)

100个经典C语言编程例子(答案另附)

100个经典C语言编程例子(答案另附)100个经典C语言编程例子(答案另编写第一个C语言程序。

在屏幕上输出:Hello World!附)1:计算 A+B 的问题时间限制:1000MS 内存限制:10000K 总提交数:1347 正确数:655问题描述输入两个整数 a 和 b ,计算 a+b 的结果并输出。

输入两个整数输出一个整数输入样例 1 2输出样例 32:Hello World!时间限制:1000MS 内存限制:65536K 总提交数:848 正确数:693问题描述输入程序没有输入输出Hello World!输入样例输出样例Hello World!提示1、输出的内容要与题目的要求完全一样,不能多字符也不能少字符。

3:两个整数的值互换时间限制:1000MS 内存限制:65536K 总提交数:1235 正确数:530问题描述输入两个整数a,b ,将 a 和 b 的值互换,并输出。

例如:输入: 2 5 输出: 5 2输入第 1 页共 58 页两个整数输出两个整数输入样例2 5输出样例5 2提示注意输入和输出的格式,两个数据之间用一个空格隔开。

问题来源4:计算三门课程总分和平均分时间限制:1000MS 内存限制:65536K 总提交数:1190 正确数:482问题描述输入三门课程的成绩,输出总分和平均分。

要求:(1)输入三个数,用空格隔开。

输入的数可以是小数。

(2)输出两个数,用空格隔开。

输出的数保留两位小数。

例如:输入: 75 80 90 输出: 245.00 81.67输入输入三个数,用空格隔开。

输入的数可以是小数。

输出输出两个数,用空格隔开。

输出的数保留两位小数。

输入样例75 80 90输出样例245.00 81.67问题来源5:鸡兔同笼问题时间限制:1000MS 内存限制:65536K 总提交数:872 正确数:443问题描述这个问题,是我国古代著名趣题之一。

大约在1500年前,《孙子算经》中就记载了这个有趣的问题。

c语言实操题

c语言实操题

c语言实操题下面为C语言上机考试中可能出现的代码问题(基础):(喜欢的话记得分享给身边的小伙伴哦!点点赞,谢谢啦!)1、求300-800之间,能被3整除或者能被5整除的数的总个数。

# include<stdio.h>intmain(){int i, s=0;for(i=300;i<=800;i++){if(i%3==0||i%5==0)s++;}printf("%d\n", s);return0;}2、输入一个十进制数,分别输出该数对应的八进制与十六进制数。

(输出三行第一行为八进制数,第二行为十六进制数,十六进制字母取小写字符,最后一行为空)# include<stdio.h>intmain(){inti;scanf("%d",&i);printf("%o\n%x\n", i, i);return0;}3、输入两个正整数m和n,求其最大公约数和最小公倍数。

(输入正整数以空格隔开,输出两行,第一行为最大公约数,第二行为最小公倍数)# include<stdio.h>intmain(){int m, n, x, y,z;scanf("%d %d",&x,&y);m = x;n = y;while(y!=0){z = x%y;x = y;y = z;}printf("%d\n%d\n", x, m*n/x);return0;}4、输入一个整数n(1<=n<=10),然后输入n个整数,并保存到数组中,再输入一个整数m,输出m在数组中的下标,如果不存在则输出"Not present!"。

例:输入:545 12 75 36 9812输出:1# include<stdio.h>intmain(){int i, n, m, k,a[10];scanf("%d",&n);for(i=0;i<n;i++)scanf("%d",&a[i]) ;scanf("%d",&m);for(i=0;i<n;i++){k = i;if(m==a[i]){printf("%d\n",i);break;}}if(k==n-1&&a[n-1]!=m)printf("Notpresent!\n");return0;}5、用循环语句实现以下图形。

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

1.题目标题:四位反序数题目描述:设N是一个四位数,它的n倍恰好是其反序数(例如:123的反序数是321),编程,输出一个满足条件的N。

(知识点:控制语句)输入描述:输入为一个整形数n(2<=n<=9)输出描述:输出为一个四位数的整形数样式输入:9样式输出:1089#include<stdio.h>main(){int n,g,s,b,q,i;scanf("%d",&n);for(i=1000;i<10000;i++){q=i/1000;b=i/100%10;s=i/10%10;g=i%10;if(i*n==q+b*10+s*100+g*1000)printf("%d\n",i);}}2. 题目标题:年龄分组题目描述:统计各年龄段的人数。

N(N=20)个年龄通过键盘输入,并放在age数组中;要求函数把0至9岁年龄段的人数放在d[0]中,把10至19岁年龄段的人数放在d[1]中, 把20至29岁年龄段的人数放在d[2]中, 其余依此类推, 把100岁 (含100)以上年龄的人数都放在d[10]中。

依次输出d[0]至d[10]。

输入描述:输入为20个正整数;输出描述:输出为11个正整数;样式输入:1 2 11 12 22 23 33 34 44 45 55 56 66 67 68 88 99 100 101 102 样式输出:2 2 2 2 2 23 0 1 1 3#include<stdio.h>main(){int i,age[20],d[11]={0};for(i=0;i<20;i++)scanf("%d",&age[i]);for(i=0;i<20;i++)switch(age[i]/10){case 0: d[0]++; break;case 1: d[1]++; break;case 2: d[2]++; break;case 3: d[3]++; break;case 4: d[4]++; break;case 5: d[5]++; break;case 6: d[6]++; break;case 7: d[7]++; break;case 8: d[8]++; break;case 9: d[9]++; break;default: d[10]++; break;}for(i=0;i<=10;i++)printf("%d\n",d[i]);}3.题目标题:求三个整数的最大公约数题目描述:对任意三个整数,求它们的最大公约数输入描述:三个整数a,b,c输出描述:a,b,c的最大公约数样式输入:4 24 32样式输出:4#include<stdio.h>int gcd(int n,int m){if(m==0) return n;return gcd(m,n%m);}int main(){int x,y,z;scanf("%d%d%d",&x,&y,&z);printf("%d",gcd(gcd(x,y),z));return 0;}4.题目标题:发放奖金题目描述:某车间按工人加工零件的数量发放奖金,奖金分为五个等级:每月加工零件数N < 100者奖金为10元;100 < = N < 110者奖金为30元;110 < = N <120 者奖金为50元;120 < = N <130 者奖金为70元;N > 130者奖金为80元。

请编程,由键盘输入加工零件数量,显示应发奖金数。

输入描述:输入10个加工零件数量,数量小于400.输出描述:对每一个加工零件个数,输出应发奖金数,每个奖金数之间用空格隔开样式输入:85 85 85 85 85 85 85 85 85 85样式输出:10 10 10 10 10 10 10 10 10 10#include <stdio.h>main(){int a[10],i,k;for(i=0;i<10;i++)scanf("%d",&a[i]);for(i=0;i<10;i++){k=a[i]/10;if(k<10) a[i]=10;elseswitch(k){case 10: a[i]=30; break;case 11: a[i]=50; break;case 12: a[i]=70; break;default: a[i]=80; break;}}printf("%d",a[0]);for(i=1;i<10;i++)printf(" %d",a[i]);return 0;}5.题目标题:矩阵计算题目描述:求一个3*3矩阵对角线元素之和。

输入描述:按行输入9个整数。

输出描述:对角线元素之和样式输入:1 2 3 4 5 6 7 8 9样式输出:15#include<stdio.h>int main(){int a[3][3];int i,j;for(i=0;i<3;i++)for(j=0;j<3;j++)scanf("%d",&a[i][j]);printf("%d",a[0][0]+a[1][1]+a[2][2]); return 0;}6.题目标题:歌手比赛题目描述:青年歌手参加歌曲大奖赛,有10个评委对她的进行打分,试编程求这位选手的平均得分(去掉一个最高分和一个最低分)。

输入描述:10个评委的分数,每个分数是一个浮点数.输入数据保证有一个最低分,一个最高分,且最高分,最低分不相同.其它是数据与最低、最高均不相同输出描述:输出歌手的得分,保留一位小数.所有输出的最后一行不能有回车样式输入:8.5 9 9.8 6.5 8.7 8.5 9.3 9.6 8.9 8.2样式输出:8.8#include<stdio.h>int main(){double a[10],max,min,sum;int i;for(i=0;i<10;i++)scanf("%lf",&a[i]);sum=min=max=a[0];for(i=1;i<10;i++){if(max<a[i]) max=a[i];if(min>a[i]) min=a[i];sum+=a[i];}printf("%.1lf",(sum-min-max)/8);return 0;}7.题目标题:统计题目描述:统计个位数为6的n位数,且能被m整除的共有多少个?输入描述:一个整数n(n<=5),表示该整数的位数,一个整数m(1~9);输出描述:符合条件的数的个数。

样式输入:2 3样式输出:3#include<stdio.h>int f(int n){int t=1,i;for(i=1;i<=n;i++)t*=10;return t;}int main(){int n,m,i,count=0;scanf("%d%d",&n,&m);for(i=f(n-1)+6;i<f(n);i+=10)if(i%m==0)count++;printf("%d",count);return 0;}8.题目标题:四位数题目描述:计算满足下述条件的四位数的个数:把数字abcd重新组成两个新的两位数:ac及db,如果新组成的两个十位数ac>db,且ac必须是偶数且能被n(n为1~9的整数)整除,db必须是奇数,同时两个新数的十位数字均不为零。

输入描述:一个1~9的整数。

输出描述:符合条件的数的个数。

样式输入:5样式输出:180#include<stdio.h>int main()int i,j,count=0,n;scanf("%d",&n);for(i=10;i<100;i+=2)for(j=11;j<100;j+=2)if(i>j&&i%n==0)count++;printf("%d",count);return 0;}9.题目标题:产值翻番计算题目描述:假设当年工业产值为100,工业产值的增长率每年为c%,从键盘输入一个c(0<=c<=30),试求工业产值过多少年可实现翻番(即增加一倍)。

注:后一年的产值是在前一年的基础上增长c%。

输入描述:一个0~30的实数(增长率)。

输出描述:实现翻番的年数。

样式输入:6样式输出:12#include <stdio.h>int main(){int count=0;double c,t=1;scanf("%lf",&c);while(t<2){t*=(c/100+1);count++;}printf("%d",count);return 0;}10.题目标题:行李托运题目描述:铁路托运行李规定:行李重不超过50公斤的,托运费按每公斤0.15元计费;如超过50公斤,超过部分每公斤按0.25元计费。

请编程实现自动计费功能。

输入描述:输入一个整数,表述要托运的行李的重量,单位为公斤输出描述:托运的行李重量(单位公斤)空格和运费(单位为元,保留2位小数)。

样式输入:45样式输出:45 6.75#include <stdio.h>int main(){double x,y;scanf("%lf",&x);if(x<50)y=x*0.15;elsey=(x-50)*0.25+50*0.15;printf("%.0lf %.2lf",x,y);return 0;}11.题目标题:分数比较题目描述:请编程实现比较两个分数的大小。

(注:进行分数的通分后再比较分子的大小)输入描述:输入两个分数,格式为分子/分母分子/分母,分子,分母均为整数。

输出描述:输出比较后的结果。

如果等于,则输出分子/分母=分子/分母;如果小于分子/分母<分子/分母;如果大于,则输出分子/分母>分子/分母样式输入:1/2 1/3样式输出:1/2>1/3#include <stdio.h>int gcd(int x,int y){int r=x%y;while(r){x=y;y=r;r=x%y;}return y;}int main(){int a,b,c,d,t;scanf("%d/%d %d/%d",&a,&b,&c,&d);if(b>d)t=gcd(b,d);elset=gcd(d,b);if(a*d/t>c*b/t)printf("%d/%d>%d/%d",a,b,c,d);else if(a*d/t==c*b/t)printf("%d/%d=%d/%d",a,b,c,d);elseprintf("%d/%d<%d/%d",a,b,c,d);return 0;}12.题目标题:求人数题目描述:定义一个函数,功能是计算n个学生的成绩中,高于平均成绩的人数,并作为函数值。

相关文档
最新文档