欢迎光临散文网 会员登陆 & 注册

用了两年的小米mix2s开APP流畅度

2023-06-03 12:44 作者:我们的二面角  | 我要投稿

一、程和万法称为a

A.算法 B.程

2.( )是指设计、编制、调试程序的方法和过程,是寻找算法并用计算机能够理解的语言表达出来的一种活动。b3

A.算法 B.程序设计 C.程序 D.编程

3.(c )程序设计方法采用“自顶向下,逐步求精”的设计思想,其理念是将大型的程序分解成小型和便于管理的任务,如果其中的一项任务仍然较大,就将它分解成更小的任务。

A.软件工程 B.软件测试 C.结构化 D.面向对象

4.( D)程序设计方法中的类通常规定了可以使用哪些数据和对这些数据执行哪些操作,数据表示对象的静态特征——属性,操作表示对象的动态特性——行为。

A.软件工程 B.软件测试 C.结构化 D.面向对象

5.(d )是将所设计的算法变成计算机能够识别并运行的代码的过程。

A.算法 B.程序 C.程序设计 D.编程

6.计算机唯一可以读懂的语言就是计算机的指令,叫做机器语言,被称为(a )程序设计语言。

A.低级 B.中级 C.高级 D.特级

7. C++是一种( c)程序设计语言。

A.低级 B.中级 C.高级 D.特级

8.关于C++和C语言的描述中,错误的是( c)。

A. C++是C语言的超集

B. C++对C语言进行了扩充

C. C++和C语言都是面向对象的程序设计语言

D. C++包含C语言的全部语法特征

9.每个C++程序都必须有且仅能有一个(a )。

A.主函数 B.预处理命令 C.函数 D.注释

10.在C++中,表示行注释开始的符号是(b )。

A.# B.// C./* D.;

11.在C++中,表示一条语句结束的符号是(d )。

A.# B.// C./* D.;

12.在C++中,函数体是由一对( )括起来的部分。

A.{ } B.[] C.<> D.(a )

13.在C++中,与cout一起使用的插入运算符是( c)。

A.< B.> C.<< D.>>

14.在C++中,与cin一起使用的提取运算符是( d)。

A.< B.> C.<< D.>>

15.下面合法的标识符是(a )。

A. XYZ 12 B. main C.8num D. a$s二、

1.下列叙述中,正确的是(d )。

A.任何一个十进制小数都可以用有限位二进制小数精确地表示出来

B.在一种数制中,最小的数码是“0”,而最大的数码是基数本身

C.按字符的ASCⅡ码比较,“C”比“c”大

D.负数的补码的补码是其原码

2.字符的ASCⅡ码在微机中的表示方法是:使用8位二进制码并且( c)。

A.最低位为0 B.最低位为1

C.最高位为0 D.最高位为1

3.下列无符号数中最大的是( b)。

A.100 B.(66)₁ ₆ C.( 143) ₈ D.(01100101)₂

4.以下4个数未标明属于哪一种数制,但是可以断定( b)不是八进制数。

A.1001 B.8643 C.4523 D.1673

5.与十进制数232等值的十六进制数是( a)。

A. E8 B. F8 C. E4 D. F4

6.已知字母“0”的ASCII码是48,则字母“9”的ASCII码是( d)。

A.32 B.9 C.39 D.57

7.十进制数-100的8位二进制补码是( a)。

A.10011100 B.11100100

C.00011011 D.10011011

8.在表示存储器的容量时,1KB的准确含义是( b)字节。

A.1 000 B.1 024 C.512 D.2048

9.通常说一台微型计算机的内存容量为256M,指的是( c)。

A.256兆位 B.256兆字

C.256兆字节 D.256000兆字

10.以下选项中,(d )不是字符型常量。

A.'\' B.'a' C.'0' D."W"

11.以下选项中,非法的变量名是(c )。

A. No 1 B. Name C.2degree D. sumOfGrade

12.下面的变量定义语句中,错误的是( b)。

A. int x(1),y(1); B. int x=y=1;

C. int x=1,y=1; D. int x=1,y=x;

三、

1.运算符优先级按由高到低顺序排列正确的是( c)。

A.=,| |,!=,% B.=,%,||,!=

C.%,!=,||;= D.| |,!= %,=

2.在C+干中,要求操作数必须是整型的运算符是( a)。

A.% B.&& C./ D.<=

3.设1,j,k都是变量,下面不正确的赋值表达式是(d )。

A. i++ B.1=J=k C. i=j==k D. i+j=k

4.若m、n为整型,x为实型,ch为字符型,下列赋值语句中正确的是( b)。

A. m+n=x; B. m=ch+n; C. x=(m+n,++: D. m-x%n;

5若整型变量a、b、c、d、m、n、k的值均为1,运行表达式m=a>=b)&&(n=c<=d)||k=0)后,m、n、k的值是(d )。

A.0,0,0 B.1 ,1 ,1 C.1,1,0 D.0,1,1

6.整型变量m,n的值相等,且不等于0,下列表达式中结果为0的是(d )。

A. n B. m&n C. m||n D. m<n

7.下面语句的输出结果是( a)。

int x=6. y-3,

cout.<(x++--y,x%y,x/y)<<endl;

A.3 B.1 C.0 D.4

8.变量x表示成绩,C++中表示0≤x≤100的表达式是( b)。

A.0<=x and<=100 B.0<=x&&x<=100

C.0<=x or<=100 D.0<=x||x<=100

9.下面说法正确的是(d )。

A.空语句就是一个空行 B.空语句是什么也不输出的语句

C.复合语句就是多条语句 D.复合语句逻辑上是一条语句

10.常量3.14默认的数据类型是( c)。

A. int B. float

C. double D. long double

11.常量1000默认的数据类型是( a)。

A. int B. float

C. double D. long double

12.表达式2*2.14f+100的数据类型是(a )。

A. float B. double

C. long double D.错误表达式

13.表达式sqrt(b*b-4*a*c)>=0&&a!=0. 是(c )表达式。

A.算术 B.关系 C.逻辑 D.函数

14.已知数字字符'0'的ASCⅡ码为48,若有以下程序,则程序运行后的输出结果是(b )。第4章 程序控制结构 19

2.下面关于循环语句的叙述中,正确的是( D )。

A. for循环只能用于循环次数已知的情况

B. for循环与do…while循环一样,都是先执行循环体后判断条件

C. for循环体内不能出现while语句

D.无论哪种循环,都可以从循环体内转移到循环体外

3.下面关于for循环的叙述中,不正确的是( B )。

A.在循环体中,可以改变循环控制变量的值

B.在循环体中,可以改变循环变量的初值和终值

C.循环变量可增可减

D.循环变量不是必须在表达式1中给出

4.下面的描述,不正确的是( C。

A.语句for(i=0;;i++)表示无限循环

B.语句for(;;)表示无限循环

C.语句for()表示无限循环

D. while(1)表示无限循环

5.下面关于break语句的描述中,不正确的是( B ) 。

A. break语句用于循环体内,将退出该循环

B. break语句用于if语句中,将退出该if语句

C. break语句用于switch语句中,将退出该switch语句

D. break语句在一个循环体内可以多次出现

6. C++规定,else与( D ))相匹配。

A.同一列的if B.同一行上的if

C.之后最近的if D.之前最近的if

7.下面各组语句中,不是“死循环”的是( B )。

A. int i=0; B. int k=100;

do while( 1)

{ { k=k%100+1;

++i; if(k==20)break;

}while(i>=0); }

C. int j,sum(0); D. int a=3379;

for(j=1;;j++) while(a++%2+3%2)

sum++; a++;

8.下面程序段执行后的输出结果为( ) 。

A

int i,j,m ;

for(i=0,m=1;i<5;i++)

、for(j=0;j<i;j++)

m+=1;

cout<<m;

A.1 1 B.1 C.17 D.7

五、

3.有关函数的形参和实参的描述错误的是( C ) 。

A.实参的数量要和相应的形参一致

B.形参也是函数的局部变量

C.形参和实参不可以同名

D.由于是单向传值,所以形参值的改变不会影响实参的值

4.以下函数声明形式错误的是( D ) 。

A. int fun(int,int); B. int fun(int x,int y);

C. void fun(); D. void fun(int x,y);

5.有函数调用语句⁤fin(x^{ \ast }y-1,abs(a-b)),⁤则fun函数的参数个数为(

B”。

A.1 B.2 C.3

6.关于函数类型和返回值表达式类型的描述中,错误的是( D ) 。

A.函数类型不能在调用时被修改

B.函数类型应该与返回值表达式的类型一致

C.返回值表达式类型与函数类型不一致时,可能会导致错误

D.上面的描述都不对

7.如果需要一个变量在同一个源文件中所有函数中都能使用,而不能被其他源文件中的函数使用,那么这个变量应该定义为( D )。A.局部变量 B.全局变量

C.静态局部变量 D.静态全局变量

8.使用一个变量来记录函数的调用次数,那么这个变量应该定义为( C )。

A.局部变量 B.全局变量

C.静态局部变量 D.静态全局变量

七;指针

1.指针就是一种用于存放(D )的数据类型。

A.值 B.类型 C.别名 D.内存地址

2.变量的引用就是变量的( C)。

A.值 B.类型 C.别名 D.内存地址

3.下面语句中完全正确的是( B)。

A. int a,*p;*p=&a;

B.inta,∗p,∗q=&a;p=q;

C. int a,*p,*q;q=p;*q=a;

D.inta=10,∗p,∗q;∗p=a,q=p;

4.已有定义 “int a=10,*p1,*p2;p1=p2=&a;”, 下面语句中正确的是( A)。

A.a=∗p1+∗p2;

B.p2=a;

C.*p2=&a; D.&a=p2;

5 已有定义 “ int a=10,*p=&a;”, 则下面各组中两个语句完全正确并且作用相同的是( A)。

A.*p=20;a=20; B. cout<<p;cout<<a;

C. p=20; &a=20; D. cout<<&p;cout<<&a;

6.已知“int a[3][4],(*p)[4]=a,*p2[3]={a[0],a[1],a[2]};”,下列各项不表示a[2][1]地址的是(D )。

A.&a[2][1] B.*(p+2)+1 C.p2[2]+1 D.*(*(p2+2)+1)

7.已知

“int∗p=newint[3];”,

,若分配成功,则指针p 在堆中分配到的内存尺寸为( C)字节。

A.3 B.4 C.12 D.不确定

若要释放堆中的这些字节,下列语句正确的是( B)。

A. delete p; B. delete p[];

C. delete[]p; D. delete p[3];

8.已知“double a[3][4];double(*p)[4]=a;”,则a[i][j]不可以表示为( B)。

A. p[i][j] B.*(p+i)+j

C.*(*(p+i)+j) D.*(p[i]+j)

9.已知“int a=10;int &r=a;a=a+10;cout<<r;”,则输出为(B ).

A.10 B.20 C.30 D.不确定值

10.已知“int a=10,b=8;int &r=a;r=b;b=15;cout<<a<<","<<b<<","<<r;”,则输出为( C)。

A.10,15,10 B.10,8,15 C.8,15,8 D 15,15,15

11.已知 “int a=10,*p;int*&r=p;r=&a;a=20;cout<<*p;”,则输出为( B)。

A.10 B.20 C.不确定值 D.程序有错误

12.用new运算符创建一个含10个元素的一维整型数组的正确语句是( C)。

A. int *p=new a[10];

B.int∗p=newint(10);

C.int∗p=newint[10];

D. int*p=new int[10]={1,2,3,4,5};

13.对于int*p[5]的描述,正确的是(D )。

A. p是一个指向数组的指针,所指向的数组是5个int型元素

B. p是一个指向某数组中的第5个元素的指针,该元素是int型变量

C. p[5]表示某个数组的第5个元素的值

D. p是一个具有5个元素的指针数组,每个元素是一个int型指针

14.若定义“int a[]={1,2,3},*p=a;”当执行p++后,下列说法错误的是(A )。

A. p向高地址移了一个字节 B. p 向高地址移动了一个存储单元

C.*p与a[1]等价 D. p 与a+1等价

15.假设堆内存分配均成功,则下面程序段完全正确的是(A )。

A.int∗p=newint(3);


B.int∗p=newint[5];

cout<<*p;

cout<<*p;

for(int i=0;i<5;i++)

delete p; {

p[i]=i;cout<<p[i];

}

delete p;

C.int∗p=newint[5];

D.以上程序段均正确

for(int i=0;i<5;i++,p++)

{

^{ \ast }p=i; \cot t<<^{ \ast }p;

^{ \ast }p=i; \cot t<<^{ \ast }p;

}

delete[]p;

16.下面关于const指针的语句中,正确的是(B )。

A. int a=10;const int *p=&a;*p=20;

B.inta=10;int*constp=&a;^*p=20;

B.inta=10;int*constp=&a;^*p=20;

C.inta=10,b=20;int^*constp=&a;p=&b;

C.inta=10,b=20;int^*constp=&a;p=&b;

D.inta=10,b=20;constint∗constp=&a;p=8b;

八;字符串

选择题

1.已知“char*s="abcdef";cout<<s+2;”, 输出结果是( A)。

A. cdef B. c

C. abcdef D.字符

′c′

'的地址值

2.已有定义“char s[10];”, 则下面不表示s[1]的地址的是( B)。

A. s+1

B.∗(s+1)

C.&s[0]+1 D.&s[1]

3.下列描述中正确的是(A )。

A.char∗s="abcdefg";

等价于

char∗s;s="abcdefg";

B. char s1[]="abcd"; 等价于

chars1[]=a′,b′,c′,d′;

C. char*s="abcdefg"; 等价于

char∗s;∗s="abcdefg";

4.已知

“char∗s=”abcde";

则sizeof(s)的值为( C)↵sizeof(*s) 的值为(A ), strlen(s)的值为( D)。

A.1 B.2 C.4 D.5 E.6

5.下面语句段中,正确的是( C)

A.char∗sl=”abcdn,∗s2=nefghijk″;strcpy(s1,s2);

B. char s1[]="abcd",s2[]="efghijk";strcpy(s1,s2);

C. char s1[20]="abcd",*s2="efghijk";strcpy(s1,s2);

D. char s1[]="abcd";strcpy(s1,"efghijk");

九;函数

1.下列对有关带默认参数的函数的描述中,正确的是( D)。

A.只能在函数定义时设置默认参数值

B.只能在函数声明时设置默认参数值

C.函数调用时,必须使用默认的参数值,不能给出新的实参值

2.默认形参值不可以是( C)。

A.全局常量 B.全局变量

C.局部变量 D.函数调用

3.对于重载函数,程序在调用时根据(C )能够区分开到底要调用哪个函数。

A.函数名 B.返回值类型

C.参数个数和类型 D.以上都可以

4.下列有关内联函数的描述中,错误的是( D)。

A.内联函数必须在调用前以inline声明,否则就是普通的函数

B.内联函数必须是一个小函数,不能包含循环、switch等语句

C.内联函数在编译程序时进行内联置换

D.内联函数同样需要在运行时调用,并不节省运行时间

5.以下说法正确的是( B)。

A.在一个函数的函数体中可以定义另一个函数,但不可以调用另一个函数

B.在一个函数的函数体中不可以定义另一个函数,但可以调用另一个函数

C.在一个函数的函数体中既可以定义另一个函数,也可以调用另一个函数

D.在一个函数的函数体中既不可以定义另一个函数,也不可以调用另一个函数

6.以下为重载函数的一组函数声明的是(A )。

A. void print(int);void print(double);

B. void fun(int);int fun(int);

C. int max(int, int);int min(int, int);

D. void mm(int);int mm(int, int=3);

7.考虑函数原型void f(int a, int b=3, char c='*'),下面的函数调用中,不合法的调用是( C)。

A. f(5) B. f(5,8) C. f(6,,'#') D. f(0,0,'#')

8.若定义了函数 ( double *f(),则函数f的返回值为( B)。

A.实数型 B.实数的地址

C.指向函数的指针 D.函数的地址

9.语句“int(*p)();”的含义是(A ),“int *p();”的含义是(B ),“int(*p)[4];”的含义是( D)。

A.定义p是函数指针变量,p可以指向一个无参数而返回值类型为int的函数

B.这是一个函数声明,p是函数名,没有参数,返回值类型为整型指针

C.定义p是一个指向int 型的指针变量,可以让p指向一个一维数组

D.定义p是一个指向行的指针变量,可让p指向一个每行有4个元素的二维数组

10.已知“int max(int, int);int (*p)(int, int);p=max;”,则调用函数max()的错误形式为(B )。

A. p(a,b); B.*p(a,b); C.( *p)(a,b); D. max(a,b);

十;构造数据类型

1.以下各项中,不能正确把c1定义成结构体变量的是(B )。

B. struct Color c1

{int red;

int blue;

int green;

};

2.“typedef long int (LINT;”的作用是( D)。

D.定义了一个新的数据类型标识符

3.下列关于结构体的说法中,错误的是(C )。

A.结构体是用户自定义的一种数据类型

B.结构体中可设定若干个不同数据类型的成员

C.在定义结构体时,可以为成员设置默认值

D.结构体中的成员的数据类型可以是另一个已经定义的结构体

4.若以下程序的输出结果为:Zhanghong,则横线处应填入(D stu.name )。

5.假定有“struct Book {char title[40];float price;}book;”,则正确的语句为(B )。B. Book &x=book;

6.设有如下定义:

struct sk

{

int a;

float b;

}data,*p;

若“p=“p=”,则对data 中的成员a 的正确引用是( B)。B.(*p). a

7.设有如下定义:

struct sk

{ int a;float b;} data,*p;

若有“p=”,则对data 中的成员a 的不正确引用是(A )。A.*p. a

8.下面对枚举类型的描述中,正确的是( )。

C.可以定义枚举类型如下:

enum Week{Monday, Tuesday, Wednesday=5, Thursday, Friday=5};

9.定义枚举类型如下:

enum Day{Monday, Tuesday, Wednesday, Thursday, Friday=2};

则下列语句描述中,正确的是( )。

A.表达式Wednesday==Friday 的值是true

1.闰年

#include <iostream>

using namespace std;

int main() {

int year;

cout << "请输入年份:";

cin >> year;

if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) {

cout << year << "是闰年";

} else {

cout << year << "不是闰年";

}

return 0;

}

2.分数段

#include <iostream>

using namespace std;

int main() {

int score;

cout << "请输入学生成绩:";

cin >> score;

switch (score / 10) {

case 10:

case 9:

cout << "A";

break;

case 8:

cout << "B";

break;

case 7:

cout << "C";

break;

default:

cout << "D";

break;

}

return 0;

}

3.计算s

#include <iostream>

using namespace std;

int main()

{

double S = 1.0; // 初始化为第一项

for (int i = 2; i <= 100; i += 2) {

if (i % 4 == 2) { // 如果i是2的倍数但不是4的倍数,则减去当前项

S -= 1.0 / i;

} else { // 否则加上当前项

S += 1.0 / i;

}

}

cout << "S = " << S << endl;

return 0;

}

4.金字塔

#include <iostream>

using namespace std;

int main()

{

int n = 6; // 设置金字塔的总层数

for (int i = 1; i <= n; i++) { // 外层循环控制层数

for (int j = 1; j <= n - i; j++) { // 打印每层左侧的空格

cout << " ";

}

for (int k = 1; k <= 2 * i - 1; k++) { // 打印每层的星号

cout << "* ";

}

cout << endl; // 换行进入下一层

}

return 0;

}

5.fibo数列

#include <iostream>

using namespace std;

int main() {

int fib1 = 1, fib2 = 1, fib3;

cout << "Fibonacci数列的前20项为:" << endl;

for(int i = 1; i <= 20; i++) {

if(i == 1 || i == 2) { // 前两项为1

fib3 = 1;

}

else {

fib3 = fib1 + fib2;

fib1 = fib2;

fib2 = fib3;

}

cout << fib3 << " ";

if(i % 5 == 0) { // 每行输出5个数

cout << endl;

}

}

return 0;

}

6.判断质数

#include <iostream>

#include <cmath>

using namespace std;

int isPrime(int n) {

if (n <= 1) {

return 0;

}

int sqrtn = sqrt(n);

for (int i = 2; i <= sqrtn; i++) {

if (n % i == 0) {

return 0;

}

}

return 1;

}

int main() {

int n;

cout << "Enter a positive integer: ";

cin >> n;

if (isPrime(n)) {

cout << n << " is prime." << endl;

} else {

cout << n << " is not prime." << endl;

}

return 0;

}

3.三角形面积

#include <iostream>

#include <cmath>

using namespace std;

float triArea(float a, float b, float c) {

if (a + b <= c || b + c <= a || a + c <= b) { // 判断是否可以构成三角形

cout << "无法构成三角形" << endl;

return 0;

}

else {

float p = (a + b + c) / 2; // 计算半周长

float area = sqrt(p * (p - a) * (p - b) * (p - c)); // 应用海伦公式计算面积

return area;

}

}

int main() {

float a, b, c;

cin >> a >> b >> c;

float area = triArea(a, b, c);

cout << "三角形面积为:" << area << endl;

return 0;

}

逆序存储

#include<iostream>

using namespace std;

int main()

{

const int N = 10; //数组长度

int a[N]={1,2,3,4,5,6,7,8,9,10}; //初始化数组

int i, t;

//打印算法处理前数组中的存放数据

cout<<"算法处理前:";

for(i=0;i<N;i++)

cout<<a[i]<<" ";

cout<<endl;

//逆序数组元素

for(i=0;i<N/2;i++)

{

t=a[i];

a[i]=a[N-i-1];

a[N-i-1]=t;

}

//打印算法处理后数组中的存放数据

cout<<"算法处理后:";

for(i=0;i<N;i++)

cout<<a[i]<<" ";

cout<<endl;

return 0;

}

数组平均值

#include<iostream>

using namespace std;

int main()

{

const int N = 10; //数组长度

double a[N]={77,65.76,32,75,82,67,95,85,56,78}; //初始化数组

double sum=0.0, avg;

int i, count=0;

//计算数组元素的和

for(i=0;i<N;i++)

sum+=a[i];

//计算数组元素的平均值

avg=sum/N;

//输出平均值

cout<<"平均值为:"<<avg<<endl;

//查找高于平均值的数及其下标值

cout<<"高于平均值的数及其下标值为:"<<endl;

for(i=0;i<N;i++)

{

if(a[i]>avg)

{

cout<<"下标:"<<i<<" 值:"<<a[i]<<endl;

count++;

}

}

//如果没有高于平均值的数,则输出提示信息

if(count==0)

cout<<"没有高于平均值的数!"<<endl;

return 0;

}

冒泡排序法.

#include<iostream>

using namespace std;

int main()

{

const int N = 10; //数组长度

double a[N]={77,65.76,32,75,82,67,95,85,56,78}; //初始化数组

double temp;

int i, j, flag;

//冒泡排序

for(i=0;i<N-1;i++)

{

flag = 0; //标记这一趟是否进行了交换

for(j=0;j<N-i-1;j++)

{

if(a[j]>a[j+1]) //如果前面的数比后面的数大,则交换它们的位置

{

temp = a[j];

a[j] = a[j+1];

a[j+1] = temp;

flag = 1; //进行了交换,修改标记

}

}

if(flag == 0) //如果这一趟没有进行交换,说明已经有序,提前结束排序过程

break;

}

//输出排序后的数组

cout<<"排序后的数组为:"<<endl;

for(i=0;i<N;i++)

cout<<a[i]<<" ";

return 0;

}

最大公约数

#include <iostream>

using namespace std;

int gcd(int m, int n) {

int r;

while (n != 0) {

r = m % n;

m = n;

n = r;

}

return m;

}

int main() {

int m, n;

cout << "请输入两个自然数m和n: ";

cin >> m >> n;

cout << "它们的最大公约数为:" << gcd(m, n) << endl;

return 0;

}

银行利息

#include <iostream>

#include <cmath>

using namespace std;

int calculateMonths(double d, double p, double r) {

double m = log(p / (p - r * d)) / log(1 + r);

return ceil(m);

}

int main() {

double d, p, r;

cout << "请输入贷款数额d(元):";

cin >> d;

cout << "请输入每月计划偿还数额p(元):";

cin >> p;

cout << "请输入月利率r:";

cin >> r;

int months = calculateMonths(d, p, r);

cout << "需要" << months << "个月才能还清贷款。" << endl;

return 0;

}

用了两年的小米mix2s开APP流畅度的评论 (共 条)

分享到微博请遵守国家法律