华南理工《高级语言程序设计C》平时作业
华工高级语言程序设计C++ 随堂练习答案

答题: A. B. C. D.C++语言编制的源程序要变为目标程序必须要经过解释汇编答题: A. B. C. D.下列字符列中,合法的标识符是:(A)Begin(B)for答题: A. B. C. D.下述叙述正确的是()。
字符型变量不能赋予整数字符型变量可存放多个字符答题: A. B. C. D.字符串常量”\tMyNane\103”的长度是:(B)8答题: A. B. C. D.C++中,char类型数据在内存的存储形式是:原码(B)反码(C)答题: A. B. C. D.设有变量定义int与表达式i==0i==j(B)!i&&!j答题: A. B. C. D.设有int a,b;下面()不是C++(B)b%a答题: A. B. C. D.执行下列程序段后,x的值为5的表达式是(m=5,x=++mm=5,m+1,x=m答题: A. B. C. D.表示整变量a不在到10的范围内的正确表达式是((A)10<a<1(B)a<1,a>10答题: A. B. C. D.int a=1,b=2,c=3,d=4;则条件表达式(B)答题: A. B. C. D.设有int a=1,double x=0.5y=0.2(A)a=x==y(B)a=x*y答题: A. B. C. D.运算符优先级从高到低顺序的正确排列是(、&&>、%、>、&&、*=答题: A. B. C. D.可以正确表示a、之中只有一个大于(A)a>b>k(B)a<k,b>k答题: A. B. C. D.有说明int a=0;double x=5.16;以下语句中,(x=a/x;(B)x=x/a;答题: A. B. C. D.逗号表达式(a=5/2,a*5a*5的值为(B)10答题: A. B. C. D.表达式1/2*2.0的值是:)(A)2(B)答题: A. B. C. D.设有变量定义int j;与表达式i==0(A)i==j(B)i&&j答题: A. B. C. D.下列字符列中,合法的浮点型常量是:(A)6e10(B)12e0.5答题: A. B. C. D.以下运算符中,自右向左结合的运算符是:(A)&&(B)答题: A. B. C. D.答题: A. B. C. D.x是整型变量,不能够表达数学关系式x>6&&x<10!(x<=6)&&!(x>=10)答题: A. B. C. D.设有说明int x,y;下列字符列中,不合法的赋值表达式是:(A)x=y=10x=x+10=y答题: A. B. C. D.以下运算符中,优先级最低的是:(A)+=(B)答题: A. B. C. D.设变量定义int x6,y,z;执行语句(B)1答题: A. B. C. D.计算表达式x=a=4,b=x++后,变量,4,4(B)4,45答题: A. B. C. D.以下运算符中,优先级最低的是:(A)&&(B)参考答案:B答题: A. B. C. D.已知int x=1,y=0;执行下面程序段后,if(x){if(x>0)y=1;}else y=-1(B)0(C)答题: A. B. C. D.已知int x=1,y=0,;执行下面程序段后,if(x)if(y)w=x&&y;else w=y;(B)-1(C)1答题: A. B. C. D.设有函数关系为y=,下面选项中能正确表示上述关系为(=1;(B)y=-1>=0)if(!=0)==0)y0;x>0答题: A. B. C. D.语句while(a>b)a--;等价于()。
高级语言程序设计(VB)·平时作业2020春华南理工大学网络教育答案 2

《高级语言程序设计()》作业2020.2教学中心:专业层次:高起专科学号:姓名注意事项:1. 本作业共五大题,满分100分;2. 请将以上各项信息填写清楚,否则,作0分处理;3.以word文件附件形式提交,不能以图形文件附件形式提交。
交作业文件的名字必须含有你的名字(例如:vb作业(2020.2)王小兵)。
(建议以2003版word附件形式提交)4. 所有答案直接写在答案栏上,答在其它地方无效。
一.判断题(如正确打√,否则,打×。
)1.源程序中的错误一般分为编译错误、运行错误和逻辑错误等三种。
2. Write_1 和学校$ 是不正确的变量名。
3.若一个整型变量说明了之后没有给它赋值,则它的值为0。
4.判别ch是否为小写字母,若是,输出“yes”;否则,输出“No”的块结构条件语句为: If Asc(ch)>=97 And Asc(ch)<=122 ThenWriteLine (“Yes”)ElseWriteLine(“No”)End If5. 输入结构变量的值就是输入该变量的各个元素的值。
6.函数过程定义中必须有一个赋值语句把表达式的值赋给函数过程名。
7. 事件是由系统预先设置好或者在程序中由编程者自己设计的,它能够被对象识别的动作。
8. 从文件取出一组数据以流的方式存放到程序的变量或数组中称为向流写入数据。
9. 文件流类FileStream用于打开和关闭文件,并提供对文件按字节的读/写操作。
10.若某个模块中以关键字public定义子过程,则只能在该模块中可以调用该过程。
答案栏:1.× 2.√ 3.√ 4.√ 5.√ 6.× 7.√ 8.× 9.√10.×二.单项选择题1.设X为整型变量,不能正确表达1< X < 5的逻辑表达式是( )。
A. 1< X <5B. X=2 or X=3 or X=4C. 1<X And X <5D. Not (X<=1) And Not (X>=5)2.设有数组说明语句:Dim c( 10) AS Integer,则下面表示数组c的元素选项中()是错误的。
C语言程序设计 平时作业2

C语言程序设计习题二填空题:(1)已知:int a[3] = {1, 2, 3}; 则 *(a+1)+2 的值为 ___4___。
(2)下面程序段的输出结果是__B C_。
int a=1;s witch(a<=1) {case 0:printf("A");case 1:printf("B");default:printf("C"); }(3)以下程序运行后的输出结果是____3___。
main(){int a=5,b=4,c=3,d=2;if (a>b>c)printf(“%d\n”,d);else if( (c-1 >=d) = =1 )printf( “%d\n”,d+1);elseprintf( “%d\n”,d+2); }(4)下面程序段的输出结果是___3___int a[][3]={{1,2,3},{1,2,3},{1,2,3}};int s=0,m,n;for(m=0;m<=2;m++)for(n=0;n<=3;n++){ if (a[m][n]= =2) break;s+= a[m][n]; }printf(“%d”,s);(5)以下程序运行后的输出结果是__24____#include <stdio.h>int f ( int );void main( ){ int a = 4;printf(“%d\n”, f(a) );}int f( int a ){ return ( a= =0 ) ? 1: a*f(a-1);}(6)下列函数用起泡法对一维整数数组中的数据进行从小到大的排序,请填空。
void sort(int a[],int n){ int i, j;for( i=0; i < n-1; i ++)for ( _j=0;j<n-2-i;jj++ )if(_a[j]>[j+1]) { t= a[j]; a[j] = a[j+1]; a[j+1] = t; }}(7)下面程序将一组数据写入”file.dat”文件中,请填空。
华南理工大学 ,高级语言程序设计,(C++I),试卷及答案

2.
#include<iostream.h>
#include<iostream.h>
int gcd(int m, int n)
int sum(int n)
{while(m!=n)
{int c=0;
if(m>n)m-=n;else n-=m;
do{ c+=n%10; n/=10; } while(n);
35
6.变量定义 int (*pf)(int); 中 pf 是? 函数指针指向返回 int 型,有一个 int 型参数是函数指针
7.设有变量定义 int a[3][2]={1,2,3,4,5,6}, (*p)[2]=a; 表达式**(p+2)的值?
15
8.设有变量定义 struct{int x; int y; }d[2]={{1,4},{3,5}};
华南理工大学计算机学院 高级语言程序设计(C++I)试卷
学生证号:____________________
姓名: ____________________
注意事项:1. 本试卷共五大题,满分 100 分,考试时间 120 分钟; 2. 所有答案请写在答卷上,试卷和答卷同时提交;
一.单项选择题(每小题 2 分,共 20 分)
(A) *p(a,b) (B) p(a,b)或(*p)(a,b) (C) *(p(a,b)) (D) p(&a,&b)
二.简答题(每小题 2 分,共 20 分)
1
利用 pdfFactory Pro 测试版本创建的PDF文档
1.语句 cout<<setfill(‘*’)<<set(10)<<1234; 的输出结果是?
C语言程序设计”平时作业(三)

C语言程序设计”平时作业(三)“C语言程序设计”平时作业(三)1.求Fibonacci数列的前40个数。
(参考例题5.8)#includeint main(){int f1=1,f2=1,f3;int i;printf("%12d\n%12d\n",f1,f2);for(i=1;i<=38;i++){f3=f1+f2;printf("%12d\n",f3);f1=f2;f2=f3;}return 0;}2.求100——200之间的全部素数(参考例题5.10)#include#includeint main(){int n,k,i,m=0;for(n=101;n<=200;n=n+2){k=sqrt(n);for(i=2;i<=k;i++)if(n%i==0)break;if(i>=k+1){printf("%d",n);m=m+1;}if(m%10==0)printf("\n");}printf("\n");return 0;}3.有一个函数:x (x<1)y= 2x-1 (1<=x<=10)3x-11 (x>=10)写程序,输入x的值,输出y相应的值。
(参考第4章习题第6题)#includeint main(){int x,y;printf("请输入X的值");scanf("%d",&x);if(x<1){y=x;printf("x=%3d, y=x=%d\n" ,x,y);}else if(x<10){y=2*x-1;printf("x=%d, y=2*x-1=%d\n",x,y);}else{y=3*x-11;printf("x=%d,y=3*x-11=%d\n",x,y);}return 0;}4.输出所有的“水仙花数”,所谓“水仙花数”是指一个3位数,其各位数字的立方和等于该数本身。
华南理工大学高级语言程序设计作业

《高级语言程序设计()》作业2014.3教学中心:专业层次:学号:姓名:一.判断题(如正确打√,否则,打×。
)1.存储数据不属于数据处理功能。
N2. Write_1 和学校$ 是正确的变量名。
Y3.若一个整型变量说明了之后没有给它赋值,则它的值为0。
Y4.判别ch是否为小写字母,若是,输出“yes”;否则,输出“No”的块结构条件语句为:Y If Asc(ch)>=97 And Asc(ch)<=122 ThenWriteLine (“Yes”)ElseWriteLine(“No”)End If5.。
输入结构变量的值就是输入该变量的各个元素的值Y6.函数过程定义中必须有一个赋值语句把表达式的值赋给函数过程名。
N7. 事件是由系统预先设置好或者在程序中由编程者自己设计的,它能够被对象识别的动作。
Y8. 从文件取出一组数据以流的方式存放到程序的变量或数组中称为向流写入数据。
N9. 文件流类FileStream用于打开和关闭文件,并提供对文件按字节的读/写操作。
Y10. 在VB中不可以把类型说明符放在变量名的末尾来说明变量的类型。
N二.单项选择题1.下列变量名中错误的是( “年龄” )。
2.设X为整型变量,不能正确表达1< X < 5的逻辑表达式是(1< X <5 )。
3.设有数组说明语句:Dim c( 10) AS Integer,则下面表示数组c的元素选项中(c(11) )是错误的。
4.在过程的形式参数前面加上关键字( ByVal ),则该参数说明为引用参数。
D.5. 设已定义函数过程f,它有三个实型传值参数;设a,b和c为实型变量,则调用该函数的正确形式为( f a+b, b+c, c+a )。
6.若使命令按钮不可见,可以设置Visible属性的值为(False)。
7.要使单选按钮RadioButton处于选中或未选中状态,需由( Checked )属性来决定。
20春学期《高级语言程序设计基础》在线平时作业1.F4ABD6AB-

A:int p, *q; q=&p;
B:int *p, *q; q=p=NULL;
C:int a=5, *p; *p=a;
D:int a=5, *p=&a, *q=&a; *p=*q;"
答案:D
下列关于C语言的叙述错误的是( )。
A:大写字母和小写字母的意义相同
A:1234123121<回车>
B:1234123412341234<回车>
C:1234+1234+1234+1234<回车>
D:1234+123+12+1<回车>
答案:D
若a、b、c均为int型变量,则执行以下程序段后的输出结果为( )。
b=(a=10,a+5,c=10);
printf("a=%d,b=%d,c=%d\n",a,b,c);
{ int y,m,d;} today;
printf("%d\n", sizeof(struct date));}
A:2
B:3
C:6
D:出错
答案:C
若a和b均为int型变量,则执行以下程序断后x的输出是( )。
x=15;y=15;printf("%d\n",x%=(y%=2));
A:0
B:1
C:6
D:12
C:数组元素x[6]的地址
D:数组元素x[6]的值
E:选项内容11
F:选项内容11
答案:D
若希望当num的值为奇数时,表达式的值为“真”,num的值为偶数时,表达式的值为“假”。则以下不能满足要求的表达式是( )。
高级语言程序设计C 作业

C++编程作业 一、 编程题(共4小题,每小题10分,共40分) 1. 有一个经销商内部管理系统,请根据以下信息设计出能够表示商店信息的结构体,结构体名称为Distributor。商店信息类型如下: a) 商店内部编号:英文符号为id,数据类型为字符串; b) 商店名称:英文符号为name,数据类型为字符串; c) 商店地址:英文符号为address,数据类型为字符串; d) 商店联系人:英文符号为contact,数据类型为字符串; e) 商店联系电话:英文符号为tel,数据类型为字符串。 答:Struct Distributor { a) string id; b) string name; c) string address; d) string contact; e) string tel }
2. 有一个合同管理系统,请设计出能够表示合同基本信息的结构体,结构体名称为ContractInfo。学生信息类型如下: a) 合同号:英文符号为id,数据类型为字符串; b) 合同名称:英文符号为title,数据类型为字符串; c) 合同日期:英文符号为date,数据类型为整型; d) 合同金额:英文符号为amount,数据类型为双精度浮点型。。 答:Struct ContractInfo { a) string id; b) string title; c) int date; d) double amount }
3. 假设有一个采用ASCII编码的纯大写英文字符串,比如ABCDEXYZ。请问不使用已有的函数,如何将其改为纯小写的形式。(文字说明即可,不要编写代码。编写代码者,该题不得分。) 答: 两个函数如直译一样,将指定字符串变更大小写后新生成字符串存储; 注意:这里是生成新的字符串来存放,所以不能作为操作来使用; upper()负责将指定字符串变为大写,可以单独使用,也可以放到print函数中; lower()负责将指定字符串变为小写,可以单独使用,也可以放到print函数中. 4. 给定正整数n,求1*2*3*…*n。(注:本题已提供一部分起始代码,请根据题意补充完整即可;无需任何输出结果。) int n = 100; // 给定的正整数 int result; // 最终结果写入该变量 (请补充) result = 1; int i = 2; while(i < 100){ result *= i; }
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
一、分析程序,写输出结果1.#include<iostream.h>#include<math.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 << " ";}}解:m 的取值为1,3,5,7,9 对应k的取值为0,1,1,2,3, 第二个for循环:只有当k=2和k=3时才执行,当k=2,i=2,m%i等于1为真,输出m为7 当k=3,i=2,m%i等于1为真,输出m为9, i=3,m%i等于0为假,无输出结果为: 7 92.#include<iostream.h>void fun();void main(){int i;for(i=1;i<5;i++) fun();cout<<endl;}void fun(){ static int a;int b=2;a += 2 ;cout<< a+b <<'\t';}解:主函数循环4次调用fun(); fun()函数内定义了静态局部变量a,所以a的值会保持到下一次调用。
结果为:4,6 ,8,103.#include<iostream.h>int fun(int n){ if(n==0) return 1;return 2*fun(n-1);}void main(){ int a=5;cout<<fun(a)<<endl;}解:fun()函数用递归求出2的n次方,结果为: 324.#include<iostream.h>void main(){ char *cp="word";for (int i=0 ; i<4; i++ )cout<<cp+i << '\t';}解:主函数4次循环中,第一次输出cp+i,此时cp指向“word”的第一个字符,所以输出“word”,之后cp依次往后移一个位置,输出此位置及后面的字符结果为:word ord rd d二、.根据程序功能填空。
1. 程序把10个数存储到一维数组a中,并求该数组中最大值。
#include<iostream.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( *p>max ) max= *p ;cout<<"max= "<<max<<endl;}2.下面程序的功能是输出1至100之间每位数字的乘积大于每位数的和的数。
例如,45两位数字的乘积为4×5=20,和为4+5=9。
#include<iostream.h>void main(){ int n, k=1, s=0, m;for(n=1; n<=100; n++){ k=1; s=0;m=n ;while( m>0 ){ k*=m%10;s+=m%10;m=m/10 ;}if(k>s) cout<<n<<'\t';}}3.程序对输入的n求s = 1 + 1/23 + 1/33 + … + 1/n3 。
#include<iostream.h>void main(){double s; int i, n;cout<<" n= "; cin>>n;s = 0;for (i=1; i<n ; i++)s= s+/(i*i*i);cout<<"s="<<s<<endl;}4.函数create从键盘输入整数序列,以输入0为结束。
按输入顺序建立单向链表并返回表头。
struct node{int data; node * next;};node * create(){node *head, *p, *q;p = new node;head = p;cin>>p->data;while( p ){q = p;p=->data ;q->next = p;cin>>p->data;}if (head == p) head = NULL;else p=0 ;;return head;}5.以下程序求方程的全部整数解:3x + 2y - 7z = 5 ( 0 ≤ x, y, z ≤ 100 )#include<iostream.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=" << x << " y=" << y << " z=" << z << endl ;}}三、程序设计1. 编写函数输出以下形状的图形,其中构成图形的数字和输出的行数通过参数传送。
12 2 23 3 3 3 34 4 4 4 4 4 4答: void PrintFigure(int num, int row) {int i, j, k;num = num - row +1;for(i = 1; i <= row; i++) {j = 2*i-1;for(k = 1;k <= j; k++) cout<<num<<" "; num++; cout<<endl;}}2.请编程序,输入两个正整数啊a和b(a<b),输出a、b之间所有整数的因数(除1和本身)。
每行输出数据不超过10个。
例如,若输入a为6,b为8,则输出格式要求如下:the factors of 6 :2 3the factors of 7 :no factorthe factors of 8 :2 4答: #include<iostream.h> #include<math.h>void out(int a, int b) {int i, j, count;for(i = a; i <= b; i++) {count = 0;printf("\nthe factor of %d\n", i);for(j = 2; j < i; j++) {if(i % j == 0) {printf("%s%d", (count == 0 ? "":","), j);count++;}}if(count == 0)printf("no factor");}}3.请编程序,找出1至99之间的全部同构数。
同构数是这样一组数:它出现在平方数的右边。
例如:5是25右边的数,25是625右边的数,所以5和25都是同构数。
答:#include<iostream> using namespace std;void main() {int i, j, k; k = 10;for(i = 1; i <= 99; i++) {if(i == k) k *= 10;j = i * i;if(j % k == i)cout<< i << " ";}cout<<endl;}4. 编写一个程序,实现如下功能:(1)从键盘输入a op b。
其中a, b为数值;op为字符,限制为+、-、*、/ 。
(2)调用函数count(op,a,b),计算表达式a op b的值。
由主函数输出结果。
答:#include "stdafx.h" #include <iostream> using namespace std; class cal { public:int add(int x,int y) //加法定义函数 { return x+y; }int sub(int x,int y) //减法定义函数 { return x-y; }int mul(int x,int y) //乘法定义函数 { return x*y; }int div(int x,int y) //除法定义函数 { if(y==0)cout<<"0不能作除数"<<endl; else return x/y; } };int main() {cal c; //定义对象 int x,y;char ID;cout<<"请输入要计算的两个数及运算符,中间用空格隔开比如2 3 +"<<endl; cin>>x>>y>>ID;switch (ID) { case '+': cout<<c.add(x,y)<<endl;break;case '-': cout<<c.sub(x,y)<<endl;break;case '*': cout<<c.mul(x,y)<<endl;break;case '/': cout<<c.div(x,y)<<endl; }; return 0; }5. 编写一个程序,实现如下功能:(1)输入k(<100)个整数到数组x[100]中;(2)计算k个数的平均值及大于平均值的元素个数。
答:#include<iostream.h> voidmain() {Int x[100],k,i,n;Double sum=0.0,ave;cout<<"HowmanyData?\n";cin>>k;for(i=0;i<k;i++) { cin>>x[i];sum+=x[i];}ave=sum/k;n=0;for(i=0;i<k;i++)//求大于平均值的元素个数if(x[i]>ave)n++; cout<<"average="<<ave<<"\n";cout<<"Thereare"<<n<<"elementslargethanaverage.\n";}6. 定义函数void reversion(int ary[],int size);逆置数组ary的元素。