收藏 分销(赏)

C习题答案...doc

上传人:a199****6536 文档编号:6708949 上传时间:2024-12-20 格式:DOC 页数:104 大小:340.05KB 下载积分:18 金币
下载 相关 举报
C习题答案...doc_第1页
第1页 / 共104页
C习题答案...doc_第2页
第2页 / 共104页


点击查看更多>>
资源描述
4-2 编写一个程序,要求从键盘上输入两个整数,并输出这两个数中的大数。 4-3 编写一个程序,实现根据输入的x值,可求出y的值,并输出x和y的值。计算y值的数学公式为: y= {1.5x+7.5 x<=2.5 9.32x-34.2 x>2.5 4-4 设计一个程序,输入实行变量x和y的值。若x>y,则输出x-y的值;否则输出y-x的值 4-5 设计一个程序,求出下列一元二次方程的根: ax^2+bx+c=0 系数a、b、c的值从键盘上输入。求方程根的计算公式为: s=(-b+根号(b^2-4ac))/2a 当平方根小于0时,输出“No solutons!”;否则,输出x的两个根。 4-6 设计一个程序,将从键盘上输入的百分制成绩转换成对应的五分制成绩并输出。90分以上为A,80~89分为B,70~79为C,60~69为D,60分以下为E。分别用条件语句和开关语句实现。 4-7 从键盘输入10个实数,并求出这10个数之和及平均值。用循环语句实现,写出完整的程序。 4-8 从键盘输入一个整数n的值,按下式求出y的值,并输出n和y的值(y用实数表示): y=1!+2!+3!+.....n! 4-9 设计一个程序,输出所有的水仙花数。所谓水仙化数是一个三为数,其各位数字的立方和等于该数本身。列如: 153=1^3+5^3+3^3 因此153是一个水仙化数。 4-10 设计一个程序,求出100~200之间的所有素数。 4-11 用循环语句实现输出如下的图形: * * * * * * * * * * * * * * * 4-12 设计一个程序,按以下公式求出数列的20项并输出。计算公式为: y=0 n=0;y=1 n=1;y=2 n=2;y=Y(n-1)+Y(n-2)+Y(n-3) n>2 4-13 设计一个程序,输入一个四位数(整数,求出各位数之和。 4-14 从键盘输入若干个实数,以输入0为结束。设计一个程序,分别统计出正数的个数和负数的个数。并求出正数之和、负数之和及总的平均值。 4-15 设计一个程序,输入一个四位整数。将各位数字分开,并按其反序输出。列如:输入1234,则输出4321,要求必须用循环语句实现。 4-16 设计一个程序,求出满足以下条件的最小的n值和s值: s=1+2+3+.....+n,且x>=600 4-17 求pi/2的近似值的公式为: pi/2=2/1*2/3*4/3*4/5*....*2n/(2n-1)*2n/(2n+1).... 其中,n=1、2、3....设计一个程序,求出当n=100是pi的值 4-18 求出1~599中能被3整除,且至少有一位数字为5的所有整数。如15、51、513均是满足条件的整数。 4-19 求满足以下条件的三为数n,它除以11所得的商等于n的各位数字的平方和,且其中至少有两位数字相同。列如,131除以11的商为11,各位数字的平方和为11,所以它是满足条件的三位数。 5-2 设计一程序,计算组合数:C(m,r)=m!/(r!*(m-r)!),其中m,r为正整数,且m>r.分别求出C(4,2).C(6,4).C(8,7)的组合数。求阶乘和组合数须用函数来实现。 5-3 设计一个程序,输入一个十进制整数,输出相应的十六进制数。设计一个函数实现数制转换。 5-4 设计一个程序,求出5~100之间的所有素数,要求每行输出5个素数。判断一个整数是否为素数用一个函数来实现。 5-5设计一个程序,输入两个整数,求出这两个整数的最小公倍数。求两个数的最小公倍数用一个函数来实现。 5-6设计一个程序,输入两个整数,求出这两个整数的最大公约数。求两个数的最大公约数用一个函数来实现。 5-7设计一个程序,通过重载求两个数中大数的函数max(x,y),分别实现求两个实数和两个整数的大数。 5-8设计一个程序,用内联函数实现求出三个实数中的最大数,并输出最大数。 5-9 定义一个求n!的函数,n的缺省值为10。 5-10 设计一参数数目可变的函数,第一个参数n为参数的个数。求出这n个实蚕之和并输出。 5-11 设计一参数数目可变的函数,第一个参数n为参数的个数。调用该函数时,若n=3,则求出后三个实参之积并返回该值;若n=则求出后四个实参的平均值并返回该值 5-12 用递归函数实现Fibonnaci数列的前n项,n作为函数的参数 5-13 当x>1时,Hermite多项式定义为:H(x)={1 n=0 ,2x n=1 ,……..,当输入实数x 和整数n后,求出Hermite多项式的前n项的值。分别用递归函数和非递归函数来实现。 5-14阿克曼函数定义如下:………………..,其中m、n为正整数,设计一个程序,分别求出Acm(5,3)的值 5-15 设计一个程序,要求输入一个整数,并能逐位正序和反序输出,如输入一个整数3456,则输出3456和6543,分别设计两个函数,一个实现正序输出,另一个实现反序输出 5-16 设计一个程序,将求两个实数的最大值函数放在头文件mufun.h中,在源程序文件mypro.cpp中包含该头文件,并实现输入三个实数,求出最大值 5-17 设计一个程序,定义带参数的宏MAX(A,B)和MIN(A,B),分别求出两个数中的大数和小数,在主函数中输入三个数,并求出这三个数中的最大数和最小数 5-18 已知三角形的三条边a,b,c,则三角形的面积为:area=sqrt[s(s-a)(s-b)(s-c)求出其中s =(a+b+c)/2。编写程序,分别用带参数的宏和函数求三角形的的面积 5-19 设计一个程序,使用条件编译输出调试信息 6-1 读入一组整数到一维数组中,设计一程序,找出其中最大的偶数和最大的奇数(若设有奇数时,输出“没有奇数!“)并输入 6-2 输入一组非0整数(以输入0作为输入结束标志)到一维数组中,设计一程序,求出这一组数的平均数,并分别统计出这正数和负数的个数 6-3 输入10个数到一维数组中,按升序排序后输出。分别用3个函数实现数据的输入,排序和输出 6-4 输入N个数到一维数组中,求均方差: D= 其中M= 6-5 设计一程序,求一个4*4距阵对角线元素和 6-6 先输入一个4*4的距阵,转置后输出结果, 6-7 用一个2维数组float cla[50][2]来存放一个班级的2门课程(c++和计算机应用基础)的成绩 6-8 用cin.getline()将一个字符串出入到字符数组S(char S[200])中,删除字符串中的所有空格后输出 6-9 用cin.getline()将一个字符串出入到字符数组中,按反序输出 6-10 设计一个函数int strlen(char s[])。求出字符串S中包含的字符个数,并作为函数的返回值 6-11 设计一个函数void strcpy(char a[],char b[]),将b中的字符串拷贝到数组a中 6-12 设计一个函数void strcat(char a[],charb[])。将b中的字符串拼接到数组a中的字符串的后面,构成一个字符串 6-13 用筛选法求出2到200之间的所有的素数 7-1 定义描述一个人出生日期的结构体类型变量,包括年,月,日 7-2 定义描述通讯录的结构体类型变量,包括姓名,地址,电话号码和邮编 7-5 为全班同学建立一个通讯录(结构体数组),完成数据的输入和输出 7-6 定义描述复数的结构体类型变量,并实现复数的输入和输出。设计三个函数分别完成复数的加法,减法和乘法运算 7-7 定义描述三维坐标点(x,y,z)的结构体类型变量,完成坐标点的输入/输出,并求两左边点之间的距离 7-8一个元素包括:姓名,学号,C++成绩,英语成绩,数学成绩和这三门功课的平均成绩。设计四个函数:全班成绩的输入,求出每个同学的平均成绩,按平均成绩的升序排序,输出全班成绩表 7-9 定义一个描述一周日程的枚举类型,完成这种枚举类型变量的输入和输出 7-10 定义一个描述三种颜色的每举类型,输出这三种颜色的全排列结果 8-2 用指针作为函数的参数,设计一个实现两个参数交换的函数.输入三个实数,按升序排列后输出. 8-3 定义一个而维的字符串数组,输入若干个字符串,按升序排列后输出,要求设计一个通用的排列函数,输入参数作为字符串数组 和要排列的字符串的个数. 8-4 设计一个通用的插入排列函数,参数为指向实数的指针(指向一个已经排好序的数组)和一个实数,将该实数插入到已经排好序的数组中. 主函数完成输入若干个实数,没输入一个实数,调用一次插入排序的函数完成数据的排序,最后输出已经排好的数据. 8-5 设计一个函数,求字符串的长度(指向字符串的指针作为函数的参数).在主函数中输入一个字符串,并输出该字符串及其长度. 8-6 设计一个函数,将一个字符串并接到一个字符串的尾部,并接后构成一个新的字符串,主函数完成输入该字符串,输出该字符串和并接后的 新的字符串的功能. 8-7 设计一个函数,将一个字符串拷贝到另一个参数所指向的字符树组中.主函数完成输入一个字符串,输出拷贝后的字符串的功能. 8-8 输入一个二维数组A[6][6].设计一个函数,用指向一维数组的指针变量和二维数组的行数作为函数的参数,求出平均值,最大元素值,和最小元素值,并输出. 8-9 设计一个用矩形法求积分的通用函数,被积函数的指针,积分的上限,积分的下限和积分区间的等分数作为函数的参数.分别求出下列定积分的值;() 8-10 定义一个指向字符串的指针数组,用一个函数完成N个不等长字符串的输入,-根据实际输入的字符串长度用NEW运算符分配存储空间,依次使指针数组中的元素指向每一个输入的字符串,设计一个完成N个字符串排序的函数,在主函数中实现将排序后的字符串输出. 8-11输入一个字符串,串内有数字和非数字字符.例如ABC2345 345.......将其中连续的数字作为一个整数依次存放到另一个整数数组B中..... 8-12建立一个无序链表,没一个节点包括:学号,姓名,年龄...由一个函数完成建立链表工作,另一个函数完成输出链表上各结点值...... 8-14建立一个有序链表,每一个节点包括:学号,姓名,... 求出总分最高和最低的同学并输出 8-15建立一条无序链表,用一个函数实现将这条链表构成一条新的逆序链表,即将链表头当链表尾,链表尾当链表头,输出这两条链表上各个节点的植 9-1 定义一个描述复数的类,数据成员包括实部和虚部;成员函数包括:输出复数,置实部,置虚部。 9-2 定义一个描述学生基本情况的类,数据成员包括姓名,学号,数学,英语,物理和C++成绩,成员函数包括输出数据,置姓名和学号,置四们课的成绩和平均成绩。 9-4 三维坐标中的一条直线的两端点的坐标(x1,y1,z1)和(x2,y2,z2)来描述。定义一个类,实现坐标数据的设置,输出端点的坐标和直线的长度。构成一个完整的程序,完成测试工作。 10-2 定义一个描述复数的类,数据成员包括实部和虚部;成员函数包括输出复数以及构造函数完成数据的初始化。 10-3 定义一个描述学生基本情况的类,数据成员包括姓名,学号,数学,英语,物理和C++成绩;成员函数包括输出数据,构造函数可完成所有数据的初始化,修改每一个数据成员的函数,求出总成绩和平均成绩的函数。 11-1 把定义直角坐标系上的一个点的类作为基类,派生出描述一条直线的类,再派生出三角形类。要求成员函数能求出两点间的距离、三角形的周长和面积等。 11-7 设计一个大学的类系统,大学中有学生、教师、干部和工人。学生的任务是学习;教师的任务是上课和科研;干部的任务是管理;工人的任务是定额生产产品。提取共性作为基类,并派生出满足要求的各个类及每一个类上的必要操作。 11-8 设计一个描述儿童、成人和老人的类系统,儿童分为学龄前和学龄期儿童,成人有工作,老人已经退休。提取共性作为类基,并派生出满足要求的各个类及每一个类上的必要操作。 12-7 建立一条双向无叙链表,节点数据包括:姓名、地址和工资。 12-8 建立一条双向有序链表,节点数据包括:姓名、地址和工资。按工资从小到大的顺序排列。 13-5 定义一个复数类,通过重载运算符:=、+=、-=、+、-、*、/、==、!=,直接实现两个复数之间的各种运算。编写一个完整的程序 13-6 定义一个学生类,数据成员包括:姓名,学号,C++、数学和物理的成绩。重载运算符“<<”和“>>”,实现学生类对象的直接输入和输出。增加转换函数,实现姓名和总成绩的转换设计一个程序,验证成员函数和重载运算符的正确性。 13-7 定义描述平面上一个带内的类point,重载“++”和“--”运算符,并区分这种运算符的前置和后置运算。构成一个完整的程序。 13-8定义一个指向字符串的指针数组,重载下标运算符,实现下标是否出界的检查。 13-9通过重载函数调用运算符,完成三维数组小标的合法性检查。三维数组的类型可为整性或实型。 13-10完善字符串类,增加以下运算符的重载:+=、-=、==、!=。在主函数中侧重检测重载运算符的正确性。 第4章 4-2 #include <iostream.h> void main(){ int x,y,t; cout<<"请输入两个整数:"; cin>>x; cin>>y; if(x>=y)t=x; else t=y; cout<<t<<'\n'; } 4-3 #include <iostream.h> void main(){ float x,y; cout<<"请输入一个实数:"; cin>>x; if(x<=2.5)y=1.5*x+7.5; else y=9.32*x-34.2; cout<<x<<'\t'<<y<<'\n'; } 4-4 #include <iostream.h> void main(){ float x,y; cout<<"请输入两个实数:"; cin>>x; cin>>y; if(x>y)cout<<x-y<<'\n'; else cout<<y-x<<'\n'; } 4-5 #include <iostream.h> #include <math.h> void main(){ float a,b,c,delta,x1,x2; cout<<"请输入方程的三个系数a,b,c:"; cin>>a; cin>>b; cin>>c; delta=b*b-4*a*c; if(delta>=0){ delta=sqrt(delta); if(delta>0){ x1=(-b+delta)/2/a; x2=(-b-delta)/2/a; cout<<"方程有两个不等实根:"; cout<<"x1="<<x1<<'\t'<<"x2="<<x2<<'\n'; } else{ cout<<"方程有两个相等实根:"; cout<<"x1=x2="<<(-b)/2/a<<'\n'; } } else cout<<"No solutions!\n"; } 4-6 #include <iostream.h> void main(){ int s; while(1){ cout<<"请输入百分制分数:"; cin>>s; if(s<=0)break; else if(s>=90) cout<<"五分制分数为A\n"; else if(s>=80) cout<<"五分制分数为B\n"; else if(s>=70) cout<<"五分制分数为C\n"; else if(s>=60) cout<<"五分制分数为D\n"; else cout<<"五分制分数为E\n"; } } 用开关语句实现,程序如下: #include <iostream.h> void main(){ int s; while(1){ cout<<"请输入百分制分数:"; cin>>s; if(s<=0)break; switch(s/10){ case 10: case 9:cout<<"五分制分数为A\n";break; case 8:cout<<"五分制分数为B\n";break; case 7:cout<<"五分制分数为C\n";break; case 6:cout<<"五分制分数为D\n";break; default:cout<<"五分制分数为E\n";break; } } } 4-7 #include<iostream.h> void main(){ int i; float a,avg,sum=0; for(i=1;i<=10;++i){ cout<<"输入第"<<i<<"个数:"; cin>>a; cout<<'\n'; sum+=a; } cout<<"10个数的和sum=" <<sum<<'\n'; cout<<"10个数的平均avg=" <<sum/10<<'\n'; } 4-8 #include<iostream.h> void main(){ int i,n,y=0,k,j; cout<<"请输入n的值:"; cin>>n; cout<<'\n'; for(i=1;i<=n;++i){ k=1; for(j=1;j<=i;++j) k*=j; y+=k; } if(n==1)cout<<"1!=1"<<'\n'; else if(n==2)cout<<"1!+2!=3"<<'\n'; else{ cout<<"n为:"<<n<<'\n'; cout<<"1!+2!+…+"<<n<<"!="<<y<<'\n'; } } 4-9 #include <iostream.h> void main(){ int i,j,k; for(i=1;i<=9;i++) for(j=0;j<=9;j++) for(k=0;k<=9;k++) if(i*i*i+j*j*j+k*k*k==i*100+j*10+k) cout<<i<<j<<k<<'\n'; } 4-10 #include <iostream.h> #include<math.h> void main(){ int s,i,j; for(s=101;s<200;s+=2){ j=sqrt(s); for(i=3;i<=j;i++) if(s%i==0)break; if(i>=j+1){ cout<<s<<'\n'; } } } 4-11 #include <iostream.h> #include <iomanip.h> void main(){ int i,j; for(i=1;i<=3;i++){ cout<<setw((i-1)*3)<<" "; for(j=1;j<=5;j++) cout<<setw(3)<<"*"; cout<<'\n'; } } 4-12 #include<iostream.h> void main(){ int n,y0,y1=0,y2=1,y3=2; for(n=0;n<=3;n++){ switch(n){ case 0:cout<<"y1="<<y1<<'\n';break; case 1:cout<<"y2="<<y2<<'\n';break; case 2:cout<<"y3="<<y3<<'\n';break; default:for(;n<20;n++){ cout<<"y"<<n+1<<"="<<y1+y2+y3<<'\n'; y0=y1;y1=y2;y2=y3;y3=y1+y2+y0; } } } } 4-13 #include <iostream.h> void main(){ int i,k,l,j,s=0; cout<<"请输入一个四位整数:"; cin>>k; j=k; for(i=1;i<=4;++i){ l=j%10; j=j/10; s+=l; } //cout<<"四位整数为:"<<'\n'; cout<<'\n'<<k<<"的各位数字之和为:"<<s<<'\n'; } 4-14 #include <iostream.h> void main(void){ float a,s1=0,s2=0; int m=0,n=0; cin>>a; while(a){ if(a>0){ m++; s1+=a; } else{ n++; s2+=a; } cin>>a; } cout<<"\n正数有"<<m<<"个"; cout<<"\n负数有"<<n<<"个"; cout<<"\n正数之和为:"<<s1; cout<<"\n负数之和为:"<<s2; cout<<"\n总的平均为:"<<(s1+s2)/(m+n)<<'\n'; } 4-15 #include <iostream.h> void main(){ int s,i,j,n; cout<<"请输入一个四位整数:"; cin>>s; i=1; while(i<=4){ n=s%10; cout<<n; s=s/10; ++i; } cout<<'\n'; } 4-16 #include <iostream.h> void main(){ int n=1,s=0; while(s<600){ s+=n; ++n; } cout<<"n="<<n<<'\t'<<"s="<<s<<'\n'; } 4-17 #include <iostream.h> void main(){ double pi=1; int i=1; while(i<=1000){ pi=pi*2*(2*i/(2*i-1)); ++i; } cout.setf(ios::scientific,ios::floatfield); cout<<"pi="<<pi<<'\n'; } 4-18 #include <iostream.h> #include <iomanip.h> void main(){ int i=3,j,n,k,s=-1; while(i<=599){ if(i%3==0){ k=i; while(k){ n=k%10; if(n==5){ s++; if(s%5==0)cout<<'\n'; cout<<setw(7)<<i; break; } else k=k/10; } } ++i; } cout<<'\n'; } 4-19 #include <iostream.h> #include <iomanip.h> void main(){ int k,i=101,s=-1,n,a1,a2,a3,t=0,j,m; while(i<=999){ k=i/11; a1=i%10; m=i/10; a2=m%10; m=m/10; a3=m%10; n=a1*a1+a2*a2+a3*a3; if(k==n){ if(a1==a2||a2==a3||a1==a3){ s++; if(s%5==0)cout<<'\n'; cout<<setw(7)<<i; } } ++i; } cout<<'\n'; } 第5章 5-1 #include <iostream.h> int max(int a,int b){ int maxz; if(a>=b)maxz=a; else maxz=b; return maxz; } void main(){ int i,j,k,m,n; cout<<"请输入三个整数:"; cin>>i; cin>>j; cin>>k; m=max(i,j); n=max(m,k); cout<<"max="<<n<<'\n'; } 5-2 #include <iostream.h> #include <stdlib.h> int jc(int n){ int j=1,i; if(n<0){ cout<<"n应为正数!"<<'\n'; exit(1); } if(n==0)return 1; for(i=2;i<=n;i++)j*=i; return j; } int zh(int m,int r){ int c; if(m<=r){ cout<<"m必须大于r!"<<'\n'; exit(1); } c=jc(m)/(jc(r)*jc(m-r)); return c; } void main(void){ cout<<"C(4,2)="<<zh(4,2)<<'\n'; cout<<"C(6,4)="<<zh(6,4)<<'\n'; cout<<"C(8,7)="<<zh(8,7)<<'\n'; } 5-3 #include <iostream.h> int conversion(int x,int a[]){ int i; if(x/16==0){ a[0]=x; return 1; } else{ i=conversion(x/16,a); a[i++]=x%16; } return i; } void main(){ int i=0,x,a[50]; cout<<"请输入一个正整数(十进制):"; cin>>x; i=conversion(x,a); cout<<"该数对应的十六进制数是:"; for(int j=0;j<i;j++)cout<<a[j]; cout<<'\n'; } 5-4 #include <iostream.h> #include <math.h> int s=0; void ifprimenumber(int x){ int i,p=1; for(i=2;i<=x/2;i++){ if(x%i==0){ p=0; break; } } if(p!=0){ cout<<x<<" "; s++; } } void main(){ for(int k=5;k<=100;k++){ ifprimenumber(k); if(s%5==0)cout<<'\n'; } cout<<'\n'; } 法二: #include <iostream.h> #include <math.h> int s=0; void ifprime(int x){ int i,p=1; for(i=2;i<sqrt(x);i++){ if(x%i==0){ p=0; break; } } if(p!=0){ cout<<x<<'\t'; s++; } } void main(){ for(int k=5;k<=100;k++){ ifprime(k); if(s%5==0)cout<<'\n'; } //cout<<'\n'; } 5-5 #include <iostream.h> void main(){ cout<<"请输入两个正整数:"; int x,y; cin>>x>>y; if(x>y){ int temp=x; x=y; y=temp; } int r,a=x,b=y; while((r=a%b)!=0){ a=b; b=r; } cout<<x<<"和"<<y<<"的最小公倍数是:"<<x*y/b<<'\n'; } 5-6 #include <iostream.h> int gcd(int,int); void main() { int a,b,g,l; cout<<"请输入两个正整数:"; cin>>a>>b; cout<<"a="<<a<<'\t'<<"b="<<b<<'\n'; g=gcd(a,b); cout<<a<<"和"<<b<<"的最大公约数为:"<<g<<'\n'; } int gcd(int a,int b) { int i; for(i=a;i>=1;i--) if(!((a%i)||(b%i))) return i; return 1; } 5-7 #include <iostream.h> int max(int x,int y) { int z; return z=x>y?x:y; } float max(float x,float y) { return x>y?x:y; } void main() { int a,b; float x,y; cout<<"请输入两个整数:"; cin>>a>>b; cout<<"max("<<a<<","<<b<<")="<<max(a,b)<<'\n'; cout<<"请输入两个实数:"; cin>>x>>y; cout<<"max("<<x<<","<<y<<")="<<max(x,y)<<'\n'; } 5-8 #include <iostream.h> inline float max(float x,float y,float z) { float k; k=x>y?x:y; return k>z?k:z; } void main() { cout<<"请输入三个实数:"; float a,b,c; cin>>a>>b>>c; cout<<"max="<<max(a,b,c)<<'\n'; } 5-9 #include <iostream.h> int v(int n=10); void main() { int a; cout<<"1!+2!+…+10!="<<v()<<'\n'; cout<<"请输入一个正整数:"; cin>>a; cout<<"1!+2!+…+"<<a<<"!="<<v(a)<<'\n'; } int v(int n) { int k=1; for(int i=1;i<=n;i++) k=k*i; return k; } 5-10 #include <iostream.h> #include <stdarg.h> int sum(int num,int b...) { va_list ap; int temp,sum; va_start(ap,b); sum=b; for(int i=1;i<num;i++) { temp=va_arg(ap,int); sum=sum+temp; } va_end(ap); return sum; } void main() { int x,y,z,u,v,w; cout<<"请输入二个数据:"; cin>>x>>y; cout<<"sum("<<x<<","<<y<<")="<<sum(2,x,y)<<'\n'; cout<<"请输入三个数据:"; cin>>x>>y>>z; cout<<"sum("<<x<<","<<y<<","<<z<<")="<<sum(3,x,y,z)<<'\n'; cout<<"请输入四个数据:"; cin>>x>>y>>z>>u; cout<<"sum("<<x<<","<<y<<","<<z<<","<<u<<")="<<sum(4,x,y,z,u)<<'\n'; cout<<"请输入五个数据:"; cin>>x>>y>>z>>u>>v; cout<<"sum("<<x<<","<<y<<","<<z<<","<<u<<","<<v<<")="<<sum(5,x,y,z,u,v)<<'\n'; cout<<"请输入六个数据:"; cin>>x>>y>>z>>u>>v>>w; cout<<"sum("<<x<<","<<y<<","<<z<<","<<u<<","<<v<<","<<w<<")="<<sum(6,x,y,z,u,v,w)<<'\n'; } 5-11 #include <iostream.h> #include <stdarg.h> float v(int num,int b...) { va_list ap; int sub,sum,temp; float arv; va_start(ap,b); sub=b; sum=b; if(num==3) { for(int i=1;i<num;i++){ temp=va_arg(ap,int); sub=sub*temp;} return sub; } if(num==4) { for(int j=1;j<num;j++){ temp=va_arg(ap,int); sum=sum+temp;} arv=sum/num; return arv; } return 0; } void main() { int x,y,z,k; cout<<"输入三个整数:"; cin>>x>>y>>z; cout<<"输出三个整数的积:"<<v(3,x,y,z)<<'\n'; cout<<"输入四个整数:"; cin>>x>>y>>z>>k; cout.precision(2); cout<<"输出这四个整数的平均值:"<
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服