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。

  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个学生的成绩中,高于平均成绩的人数,并作为函数值。

相关文档
最新文档