《高级语言程序设计C++2018年09》平时作业.docVIP

  • 16
  • 0
  • 约5.58千字
  • 约 13页
  • 2019-03-07 发布于广东
  • 举报

《高级语言程序设计C++2018年09》平时作业.doc

一、分析程序,写输出结果 1. #includeiostream.h #includemath.h void main() {int m, k, i ; for( m=1; m=10; m+=2 ) { k = m/3; for( i=2; i=k; i++ ) if( m%i ) cout m ; } } 答:7 9 2. #includeiostream.h void fun(); void main() {int i; for(i=1;i5;i++) fun(); coutendl; } void fun() { static int a; int b=2; a += 2 ; cout a+b \t; } 答:4 6 8 10 3. #includeiostream.h int fun(int n) { if(n==0) return 1; return 2*fun(n-1); } void main() { int a=5; coutfun(a)endl; } 答:32 4. #includeiostream.h void main() { char *cp=word; for (int i=0 ; i4; i++ ) coutcp+i \t; } 答:word ord rd d 二、.根据程序功能填空。 1. 程序把10个数存储到一维数组a中,并求该数组中最大值。 #includeiostream.h void main() { int max; int a[10]={76,55,95,87,85,83,65,90,77,85}; int *p= a ; max=*p; for( ; p a[10] ; p++) if( *pmax ) max= *p ; coutmax= maxendl; } 2.下面程序的功能是输出1至100之间每位数字的乘积大于每位数的和的数。例如,45两位数字的乘积为4×5=20,和为4+5=9。 #includeiostream.h void main() { int n, k=1, s=0, m; for(n=1; n=100; n++) { k=1; s=0; m=n ; while( m0 ) { k*=m%10; s+=m%10; m=m/10 ; } if(ks) coutn\t; } } 3.程序对输入的n求s = 1 + 1/23 + 1/33 + … + 1/n3 。 #includeiostream.h void main() {double s; int i, n; cout n= ; cinn; s = 0; for (i=1; in ; i++) s= s+/(i*i*i) ; couts=sendl; } 4.函数create从键盘输入整数序列,以输入0为结束。按输入顺序建立单向链表并返回表头。 struct node{int data; node * next;}; node * create() { node *head, *p, *q; p = new node; head = p; cinp-data; while( p ) { q = p; p-data ; q-next = p; cinp-data; } if (head == p) head = NULL; else p=0 ; cinq-data; return head; } 5.以下程序求方程的全部整数解: 3x + 2y - 7z = 5 ( 0 ≤ x, y, z ≤ 100 ) #includeiostream.h void main() { int x, y, z ; for( x=0; x=100; x++ ) for( y=0; y=100; y++ ) { if( ( z=3*x+2*y-5 ) % 7 ) continue ; z=z/7 ; //求出z的值 if( z=0 z=100 ) //检查z的范围 cout x=

文档评论(0)

1亿VIP精品文档

相关文档