C函数编程道习题汇总含其详细程序解答
50道C++编程练习题及解答-c编程例题

50道C++编程练习题及解答-c编程例题C++作为一种广泛应用的编程语言,通过大量的练习可以帮助我们更好地掌握其编程技巧和逻辑思维。
以下是为您精心准备的 50 道 C++编程练习题及详细解答,希望能对您的学习有所帮助。
练习题 1:计算两个整数之和题目描述:编写一个 C++程序,输入两个整数,计算它们的和并输出。
```cppinclude <iostream>using namespace std;int main(){int num1, num2, sum;cout <<"请输入第一个整数:";cin >> num1;cout <<"请输入第二个整数:";cin >> num2;sum = num1 + num2;cout <<"这两个整数的和为:"<< sum << endl;return 0;}```练习题 2:判断一个数是否为偶数题目描述:编写一个 C++程序,输入一个整数,判断它是否为偶数。
```cppinclude <iostream>using namespace std;int main(){int num;cout <<"请输入一个整数:";cin >> num;if (num % 2 == 0) {cout << num <<"是偶数" << endl;} else {cout << num <<"不是偶数" << endl;}return 0;}```练习题 3:打印 1 到 100 之间的所有奇数题目描述:编写一个C++程序,打印出1 到100 之间的所有奇数。
```cppinclude <iostream>using namespace std;int main(){for (int i = 1; i <= 100; i++){if (i % 2!= 0) {cout << i <<"";}}cout << endl;return 0;}```练习题 4:计算一个整数的阶乘题目描述:编写一个 C++程序,输入一个整数,计算它的阶乘。
50道C++编程练习题及解答-c编程例题

50道C++编程练习题及解答-c编程例题在学习 C++编程的过程中,通过大量的练习题来巩固知识和提升技能是非常重要的。
下面为您带来 50 道具有代表性的 C++编程练习题及详细解答。
练习题 1:求两个数的和```cppinclude <iostream>using namespace std;int main(){int num1, num2, sum;cout <<"请输入第一个数: ";cin >> num1;cout <<"请输入第二个数: ";cin >> num2;sum = num1 + num2;cout <<"这两个数的和为: "<< sum << endl;return 0;}```解答:这段代码首先使用`iostream` 库中的`cout` 输出提示信息,让用户输入两个整数。
然后通过`cin` 接收用户输入的值,并将它们相加存储在`sum` 变量中。
最后使用`cout` 输出两数之和。
练习题 2:判断一个数是否为偶数```cppinclude <iostream>using namespace std;int main(){int num;cout <<"请输入一个整数: ";cin >> num;if (num % 2 == 0) {cout << num <<"是偶数" << endl;} else {cout << num <<"不是偶数" << endl;}return 0;}```解答:在这个练习中,通过取余运算`num % 2` 来判断一个数是否能被 2 整除。
如果余数为 0,则是偶数,否则不是偶数。
练习题 3:打印 1 到 10 的整数```cppinclude <iostream>using namespace std;int main(){for (int i = 1; i <= 10; i++){cout << i <<"";}cout << endl;return 0;}```解答:这里使用了`for` 循环,从 1 开始,每次递增 1,直到达到10 为止。
C语言编程题精选及参考答案

参加8至10次:加8分; 参加10次以上:加10分。 程序运行时输入某人参加活动的次数,则输出其应该加的分数;如果输入为负值,则给 出相应提示。 77. 编程计算如下表达式的值:1/2+1/3+...+1/n,其中的 n 在程序运行时输入。 78. 从键盘输入一元二次方程的三个系数,要求计算出其根:若有不相等的实根则输出两 实根;若有相等的实根则只输出一个;若无实根则给出相应提示;若输入导致一元二次 方程不成立,则给出提示。 79. 求以下不定方程组的所有正整数解:
22. 输入 n,求下列级数前 n 项的和。
1+1/2-2/3+3/4……
23. 编写程序用于判断一个数是否是素数。
24. 编程序输出1--1000内的所有素数。所谓素数是指除了能被1和它本身之外不能被其
它数整除的数。
25. 输入20个数,先按原来顺序输出,再将数组中元素逆置后输出,即将第1个数跟
第20个互换、第2个数跟第19个互换......。
48. 编程计算下面公式:
49. 编一子程序实现十进制数转换为其它进制数。主程序将十进制数43 和17分别转换为 二进制数和八进制数。
50. 编一个程序计算一元二次方程的根。
51. 编程输入一个整数,若为四位正整数则要求正确分离出其个、十、百、千位及中间 的两位数并分别输出,如输入的是1234,则输出应该为4、3、2、1、23;否则给出一 个出错提示。
68. 今年父亲30岁,儿子6岁,问多少年后父亲的年龄是儿子年龄的2倍? 69. 一个四位数,当它逆向排列时得到的4位数是它自身的整数倍,请找出所有符合这一
C语言编程题带答案

C语言编程题带答案C 语言作为一门广泛应用的编程语言,在学习过程中,通过编程题的练习可以更好地掌握其语法和逻辑。
下面为您带来几道 C 语言编程题以及详细的答案解析。
题目一:求两个整数的和要求编写一个 C 语言程序,输入两个整数,计算并输出它们的和。
```cinclude <stdioh>int main(){int num1, num2, sum;printf("请输入第一个整数:");scanf("%d",&num1);printf("请输入第二个整数:");scanf("%d",&num2);sum = num1 + num2;printf("这两个整数的和是:%d\n", sum);return 0;```解析:在这个程序中,首先使用`printf`函数提示用户输入两个整数,然后通过`scanf`函数获取用户输入的值并存储在变量`num1`和`num2`中。
接下来,将这两个数相加并将结果存储在变量`sum`中,最后使用`printf`函数输出结果。
题目二:判断一个数是否为奇数编写一个 C 语言程序,输入一个整数,判断它是否为奇数,如果是奇数输出“是奇数”,否则输出“不是奇数”。
```cinclude <stdioh>int main(){int num;printf("请输入一个整数:");scanf("%d",&num);if (num % 2!= 0) {printf("是奇数\n");} else {printf("不是奇数\n");return 0;}```解析:在这个程序中,使用取余运算符`%`来判断一个数是否能被2 整除。
如果取余结果不为 0,说明该数不能被 2 整除,即为奇数;否则,不是奇数。
题目三:计算 1 到 100 的累加和编写一个 C 语言程序,计算 1 到 100 的累加和。
```cinclude <stdioh>int main(){int sum = 0, i;for (i = 1; i <= 100; i++){sum += i;}printf("1 到 100 的累加和是:%d\n", sum);return 0;```解析:这里使用了`for`循环从 1 迭代到 100,每次迭代都将当前的数字加到变量`sum`中,最终得到 1 到 100 的累加和。
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语言程序设计函数练习题及参考问题详解

C语言程序设计练习题及参考答案1、定义一个函数int fun(int a,int b,int c),它的功能是:若a,b,c能构成等边三角形函数返回3,若能构成等腰三角形函数返回2,若能构成一般三角形函数返回1,若不能构成三角形函数返回0。
#include <stdio.h>int fun(int a,int b,int c){if(a+b>c && b+c>a && a+c>b){if(a==b && b==c )return 3;else if(a==b||b==c||a==c)return 2;else return 1;}else return 0;}void main(){int a,b,c,shape;printf("\nInput a,b,c: ");scanf("%d%d%d",&a,&b,&c);printf("\na=%d, b=%d, c=%d\n",a,b,c);shape =fun(a,b,c);printf("\n\nThe shape : %d\n",shape);}2、编写一个程序,将两个变量的值交换, 例如变量a中的值原为 3,b中的值原为8,程序运行后 a 中的值为8,b中的值为3。
#include <stdio.h>void fun(int *x,int *y){int t;t=*x;*x=*y;*y=t}void main(){int a=3,b=8;printf("%d %d\n",a,b);fun(&a,b);printf("%d %d\n",a,b);}3、从键盘输入3个数,将最大值放在变量a中,最小值放在变量c中。
C语言经典编程实例100题+答案

C语言程序实例100个(一)【程序1】题目:有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?1.程序分析:可填在百位、十位、个位的数字都是1、2、3、4。
组成所有的排列后再去掉不满足条件的排列。
2.程序源代码:main(){int i,j,k;printf("\n");for(i=1;i<5;i++)/*以下为三重循环*/for(j=1;j<5;j++)for(k=1;k<5;k++){if(i!=k&&i!=j&&j!=k)/*确保i、j、k三位互不相同*/printf("%d,%d,%d\n",i,j,k);}}==============================================================【程序2】题目:企业发放的奖金根据利润提成。
利润(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.程序源代码:main(){long int i;int bonus1,bonus2,bonus4,bonus6,bonus10,bonus;scanf("%ld",&i);bonus1=100000*0.1;bonus2=bonus1+100000*0.75;bonus4=bonus2+200000*0.5;bonus6=bonus4+200000*0.3;bonus10=bonus6+400000*0.15;if(i<=100000)bonus=i*0.1;else if(i<=200000)bonus=bonus1+(i-100000)*0.075;else if(i<=400000)bonus=bonus2+(i-200000)*0.05;else if(i<=600000)bonus=bonus4+(i-400000)*0.03;else if(i<=1000000)bonus=bonus6+(i-600000)*0.015;elsebonus=bonus10+(i-1000000)*0.01;printf("bonus=%d",bonus);}==============================================================【程序3】题目:一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少?1.程序分析:在10万以内判断,先将该数加上100后再开方,再将该数加上268后再开方,如果开方后的结果满足如下条件,即是结果。
50道C++编程练习题及解答-c编程例题

50道C++编程练习题及解答-c编程例题C++作为一种广泛应用的编程语言,通过不断的练习可以帮助我们更好地掌握其语法和编程思维。
以下是为您精心准备的 50 道 C++编程练习题及详细解答,希望能对您的学习有所帮助。
练习题 1:计算两个整数之和题目描述:编写一个 C++程序,输入两个整数,计算并输出它们的和。
```cppinclude <iostream>using namespace std;int main(){int num1, num2, sum;cout <<"请输入第一个整数:";cin >> num1;cout <<"请输入第二个整数:";cin >> num2;sum = num1 + num2;cout <<"两个整数之和为:"<< sum << endl;return 0;}```练习题 2:判断一个数是否为偶数题目描述:编写一个 C++程序,输入一个整数,判断它是否为偶数。
```cppinclude <iostream>using namespace std;int main(){int num;cout <<"请输入一个整数:";cin >> num;if (num % 2 == 0) {cout << num <<"是偶数" << endl;} else {cout << num <<"不是偶数" << endl;}return 0;}```练习题 3:找出三个数中的最大值题目描述:编写一个 C++程序,输入三个整数,找出并输出其中的最大值。
```cppinclude <iostream>using namespace std;int main(){int num1, num2, num3, max;cout <<"请输入第一个整数:";cin >> num1;cout <<"请输入第二个整数:";cin >> num2;cout <<"请输入第三个整数:";cin >> num3;max = num1;if (num2 > max) {max = num2;}if (num3 > max) {max = num3;}cout <<"三个数中的最大值为:"<< max << endl;return 0;}```练习题 4:计算阶乘题目描述:编写一个 C++程序,输入一个正整数,计算并输出它的阶乘。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
C函数编程道习题汇总含其详细程序解答 Document serial number【LGGKGB-LGG98YT-LGGT8CB-LGUT-第1题:编写两个函数,函数功能分别是:求两个整数的最大公约数和最小公倍数,要求输入输出均在主函数中完成。
样例输入:15 25样例输出:5 75#include<>int gys(int a,int b) {int i;for(i=a;i>0;i--)if (a%i==0&&b%i==0) { return i;break;}} int gbs(int a,int b){int i;for(i=a;;i++)if(i%a==0&&i%b==0){ return i;break;}}int main(){int a,b,c,d;cin>>a>>b;c=gys(a,b);d=gbs(a,b);cout<<c<<' '<<d;return 0;}第2题:编写函数factors(num, k),函数功能是:求整数num中包含因子k的个数,如果没有该因子则返回0,例如:32=2×2×2×2×2,则factors(32,2)=5。
要求输入输出均在主函数中完成。
样例输入:42样例输出:2 样例输入:83样例输出:0#include<>int factors(int num,int k) {int n=0,a;a=num%k;while(a==0){n++; num=num/k;a=num%k;}return n;}int main(){int num,k,b;cin>>num>>k;b=factors(num,k);cout<<b<<endl;return 0;}第3题:编写函数,函数功能是:计算n的阶乘,要求输入输出均在主函数中完成。
样例输入:5样例输出:120、#include<>int jc(int n){int a,b=1;for(a=1;a<=n;a++) b=a*b; return b;}int main(){int n,s;cin>>n;s=jc(n);cout<<s;return 0;}第4题:编写函数,函数功能是:计算k以内(包括k)最大的10个(不足10个则是所有的)能被13或17整除的自然数之和。
要求输入输出均在主函数中完成。
样例输入:500样例输出:4622#include<>int sum(int k){ int n,c=0,s=0;for(n=k;n>0;n--){if(n%13==0||n%17==0){c++;s+=n;}if(c>=10)break;}return s;}int main(){int k,s;cin>>k;s=sum(k);cout<<s<<endl;return 0;}第5题:编写函数,函数功能是:根据下列公式求π的值(直到某一项的值小于给定精度e为止),精度e由键盘输入,要求输入输出均在主函数中完成。
样例输入:样例输出:#include<>double pai(double e){double s,a,k,p;s=1;a=1/;for(k=2;;k++){s+=a;a=a*(k/(k*2+1));if(a<e) break;}p=s*2;return p;}int main(){double e,p;cin>>e;p=pai(e);cout<<p<<endl;return 0;}第6题:编写程序求?要求使用函数,函数功能是:求某个数的阶乘。
n由键盘输入,输入输出均在主函数中完成。
注意:0!=1。
样例输入:3样例输出:10#include<>int jc(int a){int s=1,i;if(a==0)s=1;else{for(i=1;i<=a;i++)s=s*i;}return s;}int main(){int n,k,s;double sum=0;cin>>n;for(k=0;k<=n;k++){s=jc(k);sum+=s;}cout<<sum<<endl;return 0;}第7题:求数列要求使用函数计算该序列的前N项和S N,直到S N 大于q为止,q由键盘输入,输入输出均在主函数中完成。
样例输入:50样例输出:、#include<>float sum(float q) {float s=0,a,n;for(n=1;s<=q;n++) {a=(n+/n; s+=a;}return s;}int main(){float q,s;cin>>q;s=sum(q);cout<<s<<endl;return 0;}第8题:求数列的前n项和?要求使用函数,函数功能是:计算数列的每一项,n由键盘输入。
累加过程和输入输出均在主函数中完成。
样例输入:50样例输出:#include<>float myx(int n) {float a;int i,s=0;for(i=1;i<=n;i++) s+=i; a=s;return a;}int main(){int n,i;float s=0;cin>>n;for(i=1;i<=n;i++)s+=myx(i);cout<<s<<endl;return 0;}第9题:编写函数fun(num),其中num是一个n位数,函数功能是:求整数num的后n-1位,如果num是一位数则返回0,要求输入输出均在主函数中完成。
样例输入:9样例输出:0样例输入:6734样例输出:734样例输入:1000样例输出:0样例输入:10101样例输出:101#include<> #include<> int jw(int x) {int a,n,m;if(x<10)a=0;else{n=int(log10(x))+1;m=x%int(pow(10,n-1));a=m;}return a;}int main(){int x,c;cin>>x;c=jw(x);cout<<c<<endl;return 0;}第10题:编写函数,函数功能是:判断输入的字符是否为数字字符。
如果是,则输出YES,否则输出NO,要求输入输出均在主函数中完成。
样例输入:5样例输出:YES样例输入:B样例输出:NO#include<iostream>using namespace std;int pdsz(char n){int flag;if(n>='0'&&n<='9')flag=1;elseflag=0;return flag;}int main(){char n;n=getchar();if(pdsz(n)==1)cout<<"yes";elsecout<<"no";return 0;}第11题:编写函数,函数功能是:将两个两位数的正整数a、b合并成一个整数c,合并规则是将a的十位和个位分别放在c的千位和个位,将b的十位和个位分别放在c的百位和十位。
a、b由键盘输入,输入输出均在主函数中完成。
样例输入:45 12样例输出:4125#include<>#include<>int hb(int a,int b){int q,g,m,c;q=a/10;g=a%10;m=b*10;c=q*1000+m+g;return c;}int main(){int a,b,c;cin>>a>>b;c=hb(a,b);cout<<c<<endl;return 0;}第12题:求数列的前n项和?要求使用函数,函数功能是:计算数列的每一项,n由键盘输入。
累加过程和输入输出均在主函数中完成。
样例输入:10样例输出:#include<>#include<>double dx(double n){double a,b,c;a=pow(-1,n+1);b=n*(n+1);c=a/b;return c;}int main(){double n,s=0,i,a;cin>>n;for(i=1;i<=n;i++){a=dx(i);s+=a;}cout<<s<<endl;return 0;}第13题:求数列的前n项和?要求使用函数,函数功能是:计算数列的每一项,n由键盘输入。
累加过程和输入输出均在主函数中完成。
样例输入:3样例输出:123#include<>#include<>int an(int n){int s=0,m,a,i;for(i=1;i<=n;i++){m=int(pow(10,i-1));a=m;s+=a;}return s;}int main(){int n,i,a,sum=0;cin>>n;for(i=1;i<=n;i++){a=an(i);sum+=a;}cout<<sum<<endl;return 0;}第14题:求满足的n的最大值,要求使用函数,函数功能是:计算n的立方,k由键盘输入。
累加过程和输入输出均在主函数中完成。
样例输入:10000样例输出:13#include<>#include<>int lf(int x){int a;a=x*x*x;return a;}int main(){int k,s=0,i,n=0,a;cin>>k;for(i=1;s<k;i++){a=lf(i);s+=a;}n=i-2;cout<<n<<endl;return 0;}第15题:求数列?直到相邻两项之差的绝对值小于1E-6为止。
要求使用函数,函数功能是:计算数列的每一项,x由键盘输入。
累加过程和输入输出均在主函数中完成。
样例输入:样例输出:#include<>#include<>float sn(float x,float n) {float s=1,i,a=1,b=1,m; for(i=1;i<=n;i++){a=a*(i-1));b=b*i; m=1/b;s+=a*m*pow(x,i);}return s;}int main(){float x,k,n=0,p,q;cin>>x;for(k=1;;k++){n++;p=sn(x,n);q=sn(x,n+1);if(fabs(q-p)<1E-6)break;}cout<<p<<endl;return 0;}第16题:利用级数展开式计算cosx?直到某一项的绝对值小于为止。