数组c++_习题答案解析

合集下载

c数组指针题含答案

c数组指针题含答案

数组指针01:逆序输出从键盘输入n个整数(n<100),存放在一个一维数组中,逆序输出能被3整除的元素,并逆序输出数组下标为3的倍数的元素。

输入格式:第一个整数为个数n,后续为n个整数输出格式:第一行能被3整除的元素,第二行为下标为3的倍数的元素,各个数值之间用空格分隔。

输入:10 2 7 9 10 5 4 3 6 8 20输出:6 3 920 3 10 2#include <iostream>using namespace std;const int MAX=100;int main(){int a[MAX],n,i;cin>>n;for(i=0;i<n;i++)cin>>a[i];for(i=n-1;i>=0;i--)if(a[i]%3==0)cout<<a[i]<<" ";cout<<endl;for(i=n-1;i>=0;i--)if(i%3==0)cout<<a[i]<<" ";cout<<endl;return 0;}数组指针02:逆序存储从键盘输入n(n<100)个整数,存放在一个一维数组a中,将它们逆序存放在另一个整型数组b中,并按b数组中下标从小到大的顺序输出下标为3的倍数的数组元素。

输入格式:第一个数为数组中元素个数n,之后为n个元素。

输出格式:下标为3的倍数的元素,各个数值之间用空格分隔。

输入:10 2 7 9 10 5 4 3 6 8 20输出:20 3 10 2#include <iostream>using namespace std;const int MAX=100;int main(){int a[MAX],b[MAX],n,i;cin>>n;for(i=0;i<n;i++){cin>>a[i];b[n-1-i]=a[i];}for(i=0;i<n;i++)if(i%3==0)cout<<b[i]<<" ";cout<<endl;return 0;}数组指针03:平均值从键盘输入任意个整数(以0结束,假设不超过100个),存放在一个一维数组中,计算这组数的平均值(实型)。

C语言数组编程题及解答

C语言数组编程题及解答

C语言数组编程题及解答【程序1】用筛选法求100之内的素数筛选法又称筛法,是求不超过自然数N(N>1)的所有质数的一种方法。

据说是古希腊的埃拉托斯特尼(Eratosthenes,约公元前274~194年)发明的,又称埃拉托斯特尼筛子。

具体做法是:先把N个自然数按次序排列起来。

1不是质数,也不是合数,要划去。

第二个数2是质数留下来,而把2后面所有能被2整除的数都划去。

2后面第一个没划去的数是3,把3留下,再把3后面所有能被3整除的数都划去。

3后面第一个没划去的数是5,把5留下,再把5后面所有能被5整除的数都划去。

这样一直做下去,就会把不超过N的全部合数都筛掉,留下的就是不超过N的全部质数。

因为希腊人是把数写在涂腊的板上,每要划去一个数,就在上面记以小点,寻求质数的工作完毕后,这许多小点就像一个筛子,所以就把埃拉托斯特尼的方法叫做“埃拉托斯特尼筛”,简称“筛法”。

#include <stdio.h>#include <math.h>void main(){int i,j;int a[100];for(i=0;i<100;i++)a[i]=i+1;for(i=1;i<100;i++){if(a[i]==0)continue;for(j=i+1;j<100;j++)if(a[j]%a[i]==0)a[j]=0;}for(j=1;j<100;j++) //j从1开始,去除a[0](其值为1),因为1既不是质数,也不是合数if(a[j]!=0)printf("%d,",a[j]);printf("\n");}【程序2】题目:一个数如果恰好等于它的因子之和,这个数就称为“完数”。

例如6=1+2+3.编程找出1000以内的所有完数。

程序源代码:#include <stdio.h>int main(){int k[10];int i,j,n,s;for(j=2;j<1000;j++){n=-1;s=j;for(i=1;i<j;i++){if ((j%i)==0){n++;s=s-i;k[n]=i;}}if(s==0) //说明是完数{printf("%d is a wanshu:",j);for(i=0;i<=n;i++)printf("%d ",k[i]);printf("\n");}}return 1;}【程序3】题目:用选择法对10个数进行从大到小排序1.程序分析:可以利用选择法,即从后9个比较过程中,选择一个最小的与第一个元素交换,下次类推,即用第二个元素与后8个进行比较,并进行交换。

C语言-数组-实验题目及答案

C语言-数组-实验题目及答案

实验六数组程序设计【实验目的】1、掌握使用一维数组编程方法2、掌握使用二维数组进行程序设计【实验内容】一、上机验证程序,并分析结果要求:读懂程序,写出分析结果;上机运行程序,得到运行结果,比较之。

1、#include <stdio.h>int main(){ int a[ ]={1,2,3,4,5} , i, j, s=0 ;j = 1;for ( i = 4 ; i>=0 ; i--){s = s+ a[i] * j ;j = j * 10 ;}printf(" s= %d \n" , s );return 0;}二、程序改错题1.下面程序的功能,是从键盘输入一个数组(数组长度为10),查找数组中正数的个数。

源代码如下,程序中存在错误,请将其改正。

#include <stdio.h>int main(){int a(10);/*定义数组*/int count,i;/* i循环变量 count 正数个数*/for(i=0;i<=10;i++){/*循环输入*/scanf("%d",a[i]);}count=1;for(i=0;i<=10;i++){/*查找正数*/if(a(i)>0)count++;}printf("数组中正数有:%d个\n",count);return 0;}三编写程序1.编写程序要求输入30个学生的单科成绩,输出高于平均分的成绩。

#include <stdio.h>#define N 30int main(){float score[N],sum=0,aver;int i;for(i=0;i<30;i++){scanf("%f",&score[i]);sum=sum+score[i];}aver=sum/30;printf("平均分为:%.2f\n",aver);for(i=0;i<N;i++)if(score[i]>aver)printf("%.2f ",score[i]);printf("\n");return 0;}2.编写程序:假设有13位评委参与评分工作。

C语言数组典型例题分析与解答

C语言数组典型例题分析与解答

数组练习解答1 定义一个名为a的单精度实型一维数组,长度为4,所有元素的初值均为0的数定义语句是________________【分析】按照一般数据定义语句的格式,可以直接写出方法一(参看答案);考虑到所有元素均赋初值时可以省略数组长度,可以写出方法二(参看答案);考虑到不省略数组长度,给部分元素赋初值时,所有未赋初值的元素均有空值(对数值型数组来说,初值为0),可以写出方法三(参看答案);考虑到选用静态型,不赋初值所有元素也自动赋予。

空值(对数值型数组来说,初值为0),可以写出方法四(参看答案)。

【答案】方法一:float a[4]={0.0,0.0,0.0,0.0};方法二:float a[]={ 0.0,0.0,0.0,0.0};方法三:float a[4]= {0.0};方法四:static float [4];2 下列数组定义语句中,错误的是()①char x[1]='a';②auto char x[1]={0};③static char x[l];④char x[l];【分析】显然答案①中给字符型数组赋初值的格式不对(不能直接赋予字符常量,必须用花括号括住),所以备选答案①是符合题意的答案。

【答案】①3 用"冒泡排序法"对n个数据排序,需要进行n一1 步。

其中第k步的任务是:自下而上,相邻两数比较,小者调上;该操作反复执行n-k次。

现在假设有4个数据:4、l、3、2要排序,假定4为上、2为下,则利用"冒泡排序法"执行第2步后的结果是_________________。

【分析】开始排序前的排列执行第1步后的排列执行第2步后的排列4 1 11 4 23 2 42 3 3【答案】l、2、4、34 用"选择排序法"对n个数据排序,需要进行n-1步。

其中第k步的任务是:在第k个数据到第n个数据中寻找最小数,和第k个数据交换。

C语言数组练习及答案

C语言数组练习及答案

第四部分数组4.1 选择题1. 以下关于数组的描述正确的是(c )。

A. 数组的大小是固定的,但可以有不同的类型的数组元素B. 数组的大小是可变的,但所有数组元素的类型必须相同C. 数组的大小是固定的,所有数组元素的类型必须相同D. 数组的大小是可变的,可以有不同的类型的数组元素2. 以下对一维整型数组a的正确说明是(d )。

A.int a(10);B. int n=10,a[n];C.int n;D. #define SIZE 10scanf("%d",&n); int a[SIZE];int a[n];3. 在C语言中,引用数组元素时,其数组下标的数据类型允许是(c )。

A. 整型常量B. 整型表达式C. 整型常量或整型表达式D. 任何类型的表达式4. 以下对一维数组m进行正确初始化的是(c )。

A. int m[10]=(0,0,0,0) ;B. int m[10]={ };C. int m[ ]={0};D. int m[10]={10*2};5. 若有定义:int bb[ 8];。

则以下表达式中不能代表数组元bb[1]的地址的是(c )。

A. &bb[0]+1B. &bb[1]C. &bb[0]++D. bb+16. 假定int类型变量占用两个字节,其有定义:int x[10]={0,2,4};,则数组x在内存中所占字节数是(d )。

A. 3B. 6C. 10D. 207. 若有以下说明:int a[12]={1,2,3,4,5,6,7,8,9,10,11,12};char c='a',d,g;则数值为4的表达式是(d )A. a[g-c]B. a[4]C. a['d'-'c']D. a['d'-c]8. 以下程序段给数组所有的元素输入数据,请选择正确答案填入(a )。

#include<stdio.h>main(){int a[10],i=0;while(i<10) scanf("%d",________ );┇}A. a+(i++)B. &a[i+1]C. a+iD. &a[++i]9. 执行下面的程序段后,变量k中的值为(a )。

第4章_数组c++_习题答案解析

第4章_数组c++_习题答案解析

习题4一、单项选择题1.若有说明inta[3][4];则a数组元素的非法引用是【】A.a[0][2*1]B.a[1][3]C.a[4-2][0]D.a[0][4]【答案】D【解析】数组下标从0开始,a[0][4]的列下标越界。

2.在C++语言中,引用数组元素时,其数组下标的数据类型允许是【】A.整型常量B.整型表达式C.整型常量或整型表达式D.任何类型的表达式【答案】C3.以下不正确的定义语句是【】A.doublex[5]={2.0,4.0,6.0,8.0,10.0};B.inty[5]={0,1,3,5,7,9};C.charc1[]={′1′,′2′,′3′,′4′,′5′};D.charc2[]={x1′0′x,a′′x,8′′};【答案】B【解析】初始值的个数大于数组的大小,系统会出现编译错误。

4.对以下说明语句的正确理解是【】inta[10]={6,7,8,9,10};A.将5个初值依次赋给a[1]至a[5]B.将5个初值依次赋给a[0]至a[4]C.将5个初值依次赋给a[6]至a[10]D.因为数组长度与初值的个数不相同,所以此语句不正确【答案】B5.若有说明:inta[][4]={0,0};则下面不正确的叙述是【】A.数组a的每个元素都可得到初值0B.二维数组a的第一维大小为1C.当初值的个数能被第二维的常量表达式的值除尽时,所得商数就是第一维的大小D.只有元素a[0][0]和a[0][1]可得到初值,其余元素均得不到确定的初值【答案】D【解析】二维数组初始化时,行大小可以省略,被省略的大小根据初值的个数系统来确定,本题中,有2个初值说明是1行4列,所以第一维为1。

元素a[0][0]和a[0][1]赋初值为0,其余元素初值系统默认为0。

6.以下能对二维数组c进行正确的初始化的语句是【】A.intc[3][]={{3},{3},{4}};B.intc[][3]={{3},{3},{4}};C.intc[3][2]={{3},{3},{4},{5}};D.intc[][3]={{3},{},{3}};【答案】B【解析】二维数组初始化时,行大小可以省略,列大小不可以省略,所以A答案错误。

C语言-第03讲-数组-答案.docx

C语言-第03讲-数组-答案.docx

3.6强化练习3.6.1选择题[3-1] A)整型常呈[3-2] C)不能得到确定的初值[3-3] D) static char s[ ]= 1 Turbo\0 :简析:其它选项的'\0',多余,但不错。

[3-4] C)可以在赋值语句中通过赋值运算符对字符数组整体赋值[3-5] D) scanf( "%s%c", s, &c );简析:1 register修饰的变量是寄存器存储类型,不能进行&取地址运算。

[3-6] A) int a[10];[3-7] B) ab简析:参见第[3-41]题[3-8] B) 3[3-9] D)f简析:strcpyf a, b )字符串复制函数,将字符串b复制到字符串a中。

[3-10] D)程序出错简析:i 数组名是地址常量,不能将一个数组名赋了另一个数纽名。

[3-11] A) 4[3-12] B)x数组长度大于y数组长度[3-13] D)字符串"That”小于字符串”The”[3-14] B) strcpyf strl, str2 );[3-15] A) number=-12345简析:此程序为将字符数字转换为数字字符[3-16] A)数组首地址[3-17] B) 3简析:先将str2复制到strl中,然后计算strl的长度。

[3-18] A) char str[7]=,,FORTRAN ,;[3-19] C) 357[3-20] C) 6[3-21] D) if( strcmp( si, s2 )>0 )[3-22] D) #define SIZE 10int a[SIZE];[3-23] D) a[10-101[3-24] A)[常最表达式][3-25] C) int a[10]={ 10 };[3-26] C) double a[l][4][3-27] C) a[l + l][0][3-28] D) a[0][4][3-29] B) int a[][3]={{l, 2, 3},{4, 5, 6}};[3-30] C) int a⑵[3] ={{1,2}, {3, 4}, {5, 6}};[3-31] D)数组a中每个元素均可得到初值0[3-32] D)只有元素a[0][0]和a[0]⑴可得到初值0 其余元素均得不到初值0[3-33] B)町在程序的编译阶段得到初值0简析:静态变量在编译时,系统默认其变量初值为0.[3-34] C) float a[3][4];float a[ ]|4]={ {0}, {0}};auto float a[ ][4]={ {0}, {0}, {0}};[3-35] A)按行存放[3-36] B)将5个初值依次赋给a[0]~a[4][3-37] B) int y[5]={ 0,1,3,5,7,9 };[3-38] B) 3[3-39] D) double y[ ][3]={ 0 };[3-40] D) char s⑸="abcdef";[3-41] C) abc简析:参见第【3-7】题,,[3-42] D) a数组比b数组长度长简析:参见第[3-12]题。

C-数组上机作业和参考答案

C-数组上机作业和参考答案

实 验 报 告 五一【实验目的】1.掌握一维数组、二维数组的概念及元素的各种表示方法 2.正确掌握数组输入输出等的基本操作。

3.掌握数组和指针的关系和有关操作 4.掌握数组掌握字符串的处理方法 5.掌握数组中的一些常用算法。

二【实验内容】【实验5-1】从键盘输入6个同学计算机课程期末考试成绩,并统计出平均分、最高分、最低分,以及统计超过平均分的人数,并实现正确输出。

【实验5-2】随机产生10个学生的计算机课程的成绩(30~100),按照从大到小的顺序排序,分别显示排序前和排序后的结果。

提示:#include<stdlib.h>,包含实用工具函数后,可以使用随机函数产生成绩如:for(i=0;i<10;i++) score[i]=rand ( )%71+30;[真题17套] 请编写程序实现功能:把s 所指字符串中的内容逆置。

例如:字符串中原有的字符串为:abcdefg ,则执行后, 串s 中的内容为:gfedcba 。

[真题10套] 请编写程序实现,将s 所指字符串中下标为偶数的字符删除,串中剩余字符形成的新串放在t 所指数组中。

例如,当s 所指字符串中的内容为:"ABCDEFGHIJK",在t 所指数组中的内容应是:"BDFHJ"。

[真题13套]请编写程序实现功能:使数组左下三角元素中的值乘以n 。

例如:若n 的值为3,a 数组中的值为⎪⎪⎪⎭⎫⎝⎛654832791则返回主程序后a 数组中的值为⎪⎪⎪⎭⎫ ⎝⎛181512896793 [真题58、76套]请编写程序实现功能:求出一个2×4整型二维数组中最大元素的值,并将此值输出。

(int arr[2][4]={5,8,3,45,76,-4,12,82} ;)[真题65套] 请编写程序实现功能: 求出二维数组周边元素之和并输出。

610753189********97531则函数值为为例如:二维数组中的值⎪⎪⎪⎪⎪⎭⎫⎝⎛ [真题67套] 编写程序, 实现矩阵(3行3列)的转置(即行列互换)例如, 输入下面的矩阵: ⎪⎪⎪⎭⎫ ⎝⎛900800700600500400300200100 程序输出:⎪⎪⎪⎭⎫⎝⎛900600300800500200700400100 [真题68套] 编写程序, 实现:求出小于或等于lim (lim=50)的所有素数并放在aa 数组中,函数返回所求出的素数的个数。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

习题 4一、单项选择题1. 若有说明int a[3][4];则a数组元素的非法引用是【】A. a[0][2*1]B. a[1][3]C. a[4-2][0]D. a[0][4]【答案】D【解析】数组下标从0开始,a[0][4]的列下标越界。

2. 在C++语言中,引用数组元素时,其数组下标的数据类型允许是【】A. 整型常量B. 整型表达式C. 整型常量或整型表达式D. 任何类型的表达式【答案】C3. 以下不正确的定义语句是【】A. double x[5]={,,,,};B. int y[5]={0,1,3,5,7,9};C. char c1[]={′1′,′2′,′3′,′4′,′5′};D. char c2[]={′\x10′,′\xa′,′\x8′};【答案】B【解析】初始值的个数大于数组的大小,系统会出现编译错误。

4. 对以下说明语句的正确理解是【】int a[10]={6,7,8,9,10};A. 将5个初值依次赋给a[1]至a[5]B. 将5个初值依次赋给a[0]至a[4]C. 将5个初值依次赋给a[6]至a[10]D. 因为数组长度与初值的个数不相同,所以此语句不正确【答案】 B5. 若有说明:int a[ ][4]={0,0};则下面不正确的叙述是【】A. 数组a的每个元素都可得到初值0B. 二维数组a的第一维大小为1C. 当初值的个数能被第二维的常量表达式的值除尽时,所得商数就是第一维的大小D. 只有元素a[0][0]和a[0][1]可得到初值,其余元素均得不到确定的初值【答案】D【解析】二维数组初始化时,行大小可以省略,被省略的大小根据初值的个数系统来确定,本题中,有2个初值说明是1行4列,所以第一维为1。

元素a[0][0]和a[0][1]赋初值为0 ,其余元素初值系统默认为0。

6. 以下能对二维数组c进行正确的初始化的语句是【】A. int c[3][]={{3},{3},{4}};B. int c[][3]={{3},{3},{4}};C. int c[3][2]={{3},{3},{4},{5}};D. int c[][3]={{3},{},{3}};【答案】 B【解析】二维数组初始化时,行大小可以省略,列大小不可以省略,所以A 答案错误。

C 答案中初始值行数多于数组大小中的行大小,也是错误的。

另外初始化时,初值之间不能有空位置,故D 错误。

7. 以下不能对二维数组a 进行正确初始化的语句是【 】 A. int a[2][3]={0}; B. int a[][3]={{1,2},{0}}; C. int a[2][3]={{1,2},{3,4},{5,6}}; D. int a[][3]={1,2,3,4,5,6}; 【答案】 C8. 阅读下面程序,则程序段的功能是【 】 #include<iostream>using namespace std; int main() { int c[]={23,1,56,234,7,0,34},i,j,t; for(i=1;i<7;i++) { t=c[i];j=i-1; while(j>=0 && t>c[j]) {c[j+1]=c[j];j--;} c[j+1]=t; }for(i=0;i<7;i++) cout<<c[i]<<'\t'; putchar('\n'); return 0; } A. 对数组元素的升序排列 B. 对数组元素的降序排列 C. 对数组元素的倒序排列 D. 对数组元素的随机排列 【答案】 B【解析】每层外层for 循环结束会增加对一个元素的排序,确定c[0] ,c[1]的大小顺序,如图4-1所示。

c[1]c[2]c[3]c[4]c[5]c[0]c[6]图4-1 第一次排序第二次将c[2]分别与前2两个元素比较,插入最前面,确定c[0] ,c[1], c[2] 的大小顺序,如图4-2所示。

c[1]c[2]c[3]c[4]c[5]c[0]c[6]图4-2 第二次排序以此类推,外层6次循环后,将无序的数组实现大到小的降序排列。

9. 下列选项中错误的说明语句是【 】 A. char a[]={′t′,′o′,′y′,′o′,′u′,′\0′}; B. char a[]={"toyou\0"}; C. char a[]="toyou\0"; D. char a[]=′toyou \0′; 【答案】 D10. 下述对C++语言字符数组的描述中错误的是【 】 A. 字符数组的下标从0开始 B. 字符数组中的字符串可以进行整体输入/输出 C. 可以在赋值语句中通过赋值运算符“=”对字符数组整体赋值 D. 字符数组可以存放字符串 【答案】 C11. 以下二维数组c 的定义形式正确的是【 】 A. int c[3][] B. float c[3,4] C. double c[3][4] D. float c(3)(4) 【答案】 C12. 已知:int c[3][4];则对数组元素引用正确的是【 】 A. c[1][4] B. c[][0] C. c[1+0][0] D. 以上表达都错误 【答案】 C13. 若有以下语句,则正确的描述是【 】 char a[]="toyou"; char b[]={′t′,′o′,′y′,′o′,′u′}; A. a 数组和b 数组的长度相同 B. a 数组长度小于b 数组长度 C. a 数组长度大于b 数组长度D. a数组等价于b数组【答案】C【解析】a数组中存放的是字符串,数组大小为6个字节空间,分别存放′t′,′o′,′y′,′o′,′u′和′\0′,b数组的长度为5个字节空间,只存放′t′,′o′,′y′,′o′,′u′,5个字符。

二、填空题1.若有说明:int a[][3]={1,2,3,4,5,6,7};则a数组第一维的大小是________。

【答案】 32. 设有数组定义:char array[]="China"; 则数组array所占的空间为________个字节。

【答案】 63. 假定int类型变量占用两个字节,其有定义:int x[10]={0,2,4};,则数组x在内存中所占字节数是________。

【答案】204. 下面程序的功能是输出数组s中最大元素的下标,请填空。

#include<iostream>using namespace std;int main(){ int k, p,s[]={1, -9, 7, 2, -10, 3};for(p =0, k =p; p< 6; p++)if(s[p]>s[k]) ________cout<< k<<endl;return 0;}【答案】k=p;5. 下面程序是删除输入的字符串中字符′H′,请填空。

#include<iostream>using namespace std;int main(){ char s[80];int i,j;gets(s);for(i=j=0;s[i]!=′\0′;i++)if(s[i]!=′H′){________}s[j]=′\0′;puts(s);return 0;}【答案】s[j++] =s[i];【解析】此处相当于补充了2条语句,等价于s[j] =s[i]; j++;。

6. 已知:char a[20]= "abc",b[20]= "defghi";则执行cout<<strlen(strcpy(a,b));语句后的输出结果为________。

【答案】67. 有如下定义语句:int aa[][3]={12,23,34,4,5,6,78,89,45};,则45在数组aa中的行列坐标各为________。

【答案】2和28. 若二维数组a有m列,则计算任一元素a[i][j]在数组中相对位置的公式为(假设a[0][0]位于数组的第一个位置上)________。

【答案】i*m+j+19. 定义如下变量和数组:int k;int a[3][3]={9,8,7,6,5,4,3,2,1};则语句for(k=0;k<3;k++) cout<<a[k][k];的输出结果是________。

【答案】951【解析】定义的二维数组可以描述一个方阵:9 8 76 5 43 2 1语句功能是实现该方阵主对角线上元素的输出。

10. 已知:char a[15],b[15]={"I love china"};则在程序中能将字符串I love china赋给数组a的语句是________。

【答案】strcpy(a,b);三、读程序写结果1. 程序代码如下#include<iostream>using namespace std;int main(){char arr[2][4];strcpy(arr[0],"you");strcpy(arr[1],"me");arr[0][3]='&';cout<<arr[0]<<endl;return 0;}【答案】you&me2. 程序代码如下:#include<iostream>using namespace std;int main(){char a[]={'a', 'b', 'c', 'd', 'e', 'f', 'g','h','\0'};int i,j;i=sizeof(a);j=strlen(a);cout<< i <<","<<j<<endl;return 0;}【答案】9,83. 程序代码如下:#include<iostream>using namespace std;int main(){int i;int a[3][3]={1,2,3,4,5,6,7,8,9};for(i=0;i<3;i++)cout<<a[2-i][i];return 0;}【答案】753【解析】程序功能是实现一个方阵次对角线上元素的输出。

4. 程序代码如下:#include<iostream>using namespace std;int main(){char a[30]="nice to meet you!";strcpy(a+strlen(a)/2,"you");cout<<a<<endl;return 0;}【答案】nice to you5. 程序代码如下:#include<iostream>using namespace std;int main(){int k[30]={12,324,45,6,768,98,21,34,453,456};int count=0,i=0;while(k[i]){if(k[i]%2==0||k[i]%5==0)count++;i++;}cout<< count <<","<<i<<endl;return 0;}【答案】8,106. 程序代码如下:#include<iostream>using namespace std;int main(){char a[30],b[30];int k;gets(a);gets(b);k=strcmp(a,b);if(k>0) puts(a);else if(k<0) puts(b);return 0;}输入loveChina输出结果是【答案】love【解析】strcmp(a,b)函数功能是比较a和b字符串的大小,比较是逐个字符的比较,比较方法是ASCII码值做减法,k='l'-'C'>,所以结果输出字符串a。

相关文档
最新文档