C语言程序设计精髓(DJX周亚运)(柳州工学院)1452351203 中国大学MOOC答案100分完整版

C语言程序设计精髓(DJX周亚运)(柳州工学院)1452351203 中国大学MOOC答案100分完整版

石奉稠拘呜凉冀肺氰纠吨鞠判

第1周——初识C语言从认识变量和常量开始

codeblocks介绍——从HelloWorld开始

1、单选题:
‍#include <stdio.h>是​

A: 编译预处理指令
B: 语句
C: 函数
D: 程序入口
答案:  编译预处理指令

debug

1、单选题:
‌codeblocks中运行到下一步(next line)的快捷键是‍

A: F7
B: F5
C: F8
D: F11
答案:  F7

变量在内存中所占的字节数

1、单选题:
‎C语言用sizeof计算变量在内存中的字节数,其中sizeof是()​

A: 函数
B: 运算符
C: 标识符
D: 语句
答案:  运算符

宏常量与const常量

1、单选题:
‎宏定义是()​

A: 一条语句
B: 一种编译预处理指令
C: 一个标识符
D: 一个变量
答案:  一种编译预处理指令

2、判断题:
‏const常量有数据类型。‍

A: 正确
B: 错误
答案:  正确

第1周测验

1、单选题:
​下列选项中,合法的C语言标识符是‌

A: _a1
B: width.x
C: #abc123 
D: 123abc
E: o*k
F: a?
G: a+b
H: %a
I: b!
答案:  _a1

2、单选题:
‎以下不适合定义为用户标识符的是‎

A: int 
B: a2
C: def2
D: _3com_
E: PI 
F: Source
G: abc
答案:  int 

3、单选题:
​#include <stdio.h>是‌

A: 编译预处理指令
B: 语句
C: 函数
D: 什么都不是
E: 有语法错误
答案:  编译预处理指令

4、单选题:
‌在windows下,程序编译链接后形成的可执行文件是​

A: .obj文件
B: .exe文件
C: .o文件
D: .c文件
E: .h文件
答案:  .exe文件

5、单选题:
‏程序编译链接后显示” 0 error,0 warning” 代表‏

A: 程序中没有语法错误
B: 程序是正确的
C: 程序是不正确的
D: 程序中可能存在语法错误
E: 程序中有语义错误
答案:  程序中没有语法错误

6、单选题:
‏用8位无符号二进制数能表示的最大十进制数为‎

A: 255
B: 127
C: 128
D: 256
答案:  255

7、单选题:
‎关于可执行文件说法正确的是​

A: 可执行文件是编译链接后生成的文件
B: 可执行文件就是源代码文件
C: 可执行文件后缀为.obj
D: 可执行文件就是main.c文件
答案:  可执行文件是编译链接后生成的文件

8、单选题:
‎若变量a是int类型,并执行了语句:a=’A’+1.6;,则正确的叙述是​

A: ‘A’+1.6的结果是浮点型
B: a的值还是整型
C: a的值是字符C
D: a的值是浮点型
E: 不允许字符型和浮点型相加
答案:  ‘A’+1.6的结果是浮点型;
a的值还是整型

9、单选题:
‌C语言用sizeof计算变量在内存中的字节数,其中sizeof是()‏

A: 运算符
B: 一元运算符
C: 只需要一个操作数的运算符
D: 函数
E: 语句
F: 标识符
G: 变量
答案:  运算符;
一元运算符;
只需要一个操作数的运算符

10、单选题:
‍以下不属于Codeblocks中用于调试程序的工具是‍

A: run
B: build
C: run to cursor
D: next line
E: stop debugger
F: watches
答案:  run;
build

11、单选题:
‎程序的开发步骤中不包括​

A: 撰写文档
B: 运行程序
C: 编译链接
D: 程序测试
E: 编辑(编写代码)
答案:  撰写文档

12、单选题:
‌下列说法中错误的是()​

A: 尾数决定了实数的表数范围,阶码决定了实数的表数精度。
B: 内存是按位编址的。
C: 有符号和无符号整数的表数范围是相同的。
D: int型在所有的计算机上都占4个字节的存储单元。
E: 编译器按变量定义的类型对不同类型的变量分配不同大小的内存空间。
F: 内存是按字节编址的。
G: 对于同样的尾数,阶码的值越大,则浮点数所表示的数值的绝对值就越大。
H: sizeof是编译时执行的运算符,不会导致额外的运行时间开销。
答案:  尾数决定了实数的表数范围,阶码决定了实数的表数精度。;
内存是按位编址的。;
有符号和无符号整数的表数范围是相同的。;
int型在所有的计算机上都占4个字节的存储单元。

13、单选题:
‏若有定义:int a=8,b=5,c; ,执行语句c=a/b+0.4;后,c的值为‏

A: 1
B: 1.4
C: 2.0
D: 2
答案:  1

14、单选题:
‎在C语言中,字符型数据在内存中以字符的(  )形式存放‎

A: ASCII码
B: 国标码
C: BCD码
D: 反码 
答案:  ASCII码

15、单选题:
‎以下符合C语言语法的实型常量是‍

A: 5e-3
B: 3.14.159e
C: 1.2e0.5
D: e15
答案:  5e-3

16、单选题:
‍以下选项中可作为C语言合法整数的是‏

A: 0xffa
B: 10110B       
C: 038x
D: x2a2
答案:  0xffa

17、单选题:
‎下列说法正确的是​

A: 在C语言中,变量必须先定义后使用。
B: 一条变量定义语句可定义多个同类型的变量。
C: C89规定所有变量必须在第一条可执行语句前定义。
D: const常量只能在定义时赋值。
E: 实型常量的默认类型是double类型。
F: 一条变量定义语句不可以同时定义多个变量。
G: 不同类型的变量分配的存储空间大小都是相同的。
H: 在C语言中,所有变量都必须在定义时进行初始化。
I: 变量在没有初始化的时候,其值都是0
J: 宏常量有数据类型,编译器在宏替换时可以进行类型检查。
答案:  在C语言中,变量必须先定义后使用。;
一条变量定义语句可定义多个同类型的变量。;
C89规定所有变量必须在第一条可执行语句前定义。;
const常量只能在定义时赋值。;
实型常量的默认类型是double类型。

18、单选题:
‍下列变量定义中合法的是​

A: long ao=0xfdaL;
B: short _a=1-.1e-1;
C: double b=1+5e2.5;
D: float 2_and=1-e-3;
答案:  long ao=0xfdaL;

练兵区——单选题——不计入总分

1、单选题:
‏下列选项中,合法的C语言标识符是‍

A: _a1
B: width
C: #abc123 
D: 123abc
E: o*k
F: a?
G: a+b
H: %a
I: b!
答案:  _a1;
width

2、单选题:
‍以下不适合定义为用户标识符的是​

A: float 
B: main
C: define
D: _3com_
E: PI
F: Source
G: abc
答案:  float ;
main;
define

3、单选题:
‎#include <stdio.h>是‍

A: 编译预处理指令
B: 语句
C: 函数
D: 什么都不是
E: 有语法错误
答案:  编译预处理指令

4、单选题:
‎在windows下,程序编译链接后形成的可执行文件是‎

A: .obj文件
B: .exe文件
C: .o文件
D: .c文件
E: .h文件
答案:  .exe文件

5、单选题:
‌程序编译链接后显示” 0 error,0 warning” 代表‌

A: 程序中没有语法错误
B: 程序是正确的
C: 程序是不正确的
D: 程序中可能存在语法错误
E: 程序中有语义错误
答案:  程序中没有语法错误

6、单选题:
‏用8位无符号二进制数能表示的最大十进制数为‍

A: 255
B: 127
C: 128
D: 256
答案:  255

7、单选题:
​关于可执行文件说法正确的是‏

A: 可执行文件是编译链接后生成的文件
B: 可执行文件就是源代码文件
C: 可执行文件后缀为.obj
D: 可执行文件就是main.c文件
答案:  可执行文件是编译链接后生成的文件

8、单选题:
‎若变量a是int类型,并执行了语句:a=’A’+1.6;,则正确的叙述是‏

A: ‘A’+1.6的结果是浮点型
B: a的值还是整型
C: a的值是字符C
D: a的值是浮点型
E: 不允许字符型和浮点型相加
答案:  ‘A’+1.6的结果是浮点型;
a的值还是整型

9、单选题:
​C语言用sizeof计算变量在内存中的字节数,其中sizeof是()​

A: 运算符
B: 一元运算符
C: 只需要一个操作数的运算符
D: 函数
E: 语句
F: 标识符
G: 变量
答案:  运算符;
一元运算符;
只需要一个操作数的运算符

10、单选题:
‏以下不属于Codeblocks中用于调试程序的工具是‌

A: run
B: build
C: run to cursor
D: next line
E: stop debugger
F: watches
答案:  run;
build

11、单选题:
‏程序的开发步骤中不包括‍

A: 撰写文档
B: 运行程序
C: 编译链接
D: 程序测试
E: 编辑(编写代码)
答案:  撰写文档

12、单选题:
‏下列说法中错误的是()‏

A: 尾数决定了实数的表数范围,阶码决定了实数的表数精度。
B: 内存是按位编址的。
C: 有符号和无符号整数的表数范围是相同的。
D: int型在所有的计算机上都占4个字节的存储单元。
E: 编译器按变量定义的类型对不同类型的变量分配不同大小的内存空间。
F: 内存是按字节编址的。
G: 对于同样的尾数,阶码的值越大,则浮点数所表示的数值的绝对值就越大。
H: sizeof是编译时执行的运算符,不会导致额外的运行时间开销。
答案:  尾数决定了实数的表数范围,阶码决定了实数的表数精度。;
内存是按位编址的。;
有符号和无符号整数的表数范围是相同的。;
int型在所有的计算机上都占4个字节的存储单元。

13、单选题:
‏若有定义:int a=8,b=5,c; ,执行语句c=a/b+0.4;后,c的值为‏

A: 1
B: 1.4
C: 2.0
D: 2
答案:  1

14、单选题:
​在C语言中,字符型数据在内存中以字符的(  )形式存放‍

A: ASCII码
B: 国标码
C: BCD码
D: 反码 
答案:  ASCII码

15、单选题:
‍以下符合C语言语法的实型常量是‏

A: 5e-3
B: 3.14.159e
C: 1.2e0.5
D: e15
答案:  5e-3

16、单选题:
‎以下选项中可作为C语言合法整数的是‍

A: 0xffa
B: 10110B       
C: 038x
D: x2a2
答案:  0xffa

17、单选题:
‎下列说法正确的是‎

A: 在C语言中,变量必须先定义后使用。
B: 一条变量定义语句可定义多个同类型的变量。
C: C89规定所有变量必须在第一条可执行语句前定义。
D: const常量只能在定义时赋值。
E: 实型常量的默认类型是double类型。
F: 一条变量定义语句不可以同时定义多个变量。
G: 不同类型的变量分配的存储空间大小都是相同的。
H: 在C语言中,所有变量都必须在定义时进行初始化。
I: 变量在没有初始化的时候,其值都是0
J: 宏常量有数据类型,编译器在宏替换时可以进行类型检查。
答案:  在C语言中,变量必须先定义后使用。;
一条变量定义语句可定义多个同类型的变量。;
C89规定所有变量必须在第一条可执行语句前定义。;
const常量只能在定义时赋值。;
实型常量的默认类型是double类型。

18、单选题:
​下列变量定义中合法的是‌

A: long ao=0xfdaL;
B: short _a=1-.1e-1;
C: double b=1+5e2.5;
D: float 2_and=1-e-3;
答案:  long ao=0xfdaL;

第2周——数字间的那些事儿做点计算哈

不同类型数据的运算

1、判断题:
​通常情况下,不同类型数据的运算结果的类型是取值范围较大的那种类型。‏

A: 正确
B: 错误
答案:  正确

在定义变量的时候对变量进行初始化

1、单选题:
​下列语句中错误的是()。‍

A: int a, b, c;a=b=c=0;
B: int a, b, c;a=0;b=0;c=0;
C: int a=0;int b=0;int c=0;
D: int a=b=c=0;
答案:  int a=b=c=0;

强制类型转换

1、判断题:
​强制类型转换运算符就是强制改变一个变量原有的数据类型。​

A: 正确
B: 错误
答案:  错误

第2周测验

1、单选题:
‌下列程序的输出结果是‎‌#include <stdio.h>
int main()

   int a=7,b=5;   
   printf(“%dn”,b/a);
   return 0;   
}‎

A: 0
B: 5
C: 1
D: 0.7
答案:  0

2、单选题:
​下列关于单目运算符++、–的叙述中正确的是​

A: a++的运算过程是:先使用变量a的值,然后再执行a=a+1。
B: ++a的运算过程是:先使用变量a的值,然后再执行a=a+1。
C: a++的运算过程是:先执行a=a+1,然后再使用变量a的值。
D: a++和++a都是最终使变量a执行a=a+1,因此对于包含a++或++a的表达式而言(如j=a++;或者j=++a;),两种情况下表达式的最终运算结果一定是相同的。
答案:  a++的运算过程是:先使用变量a的值,然后再执行a=a+1。

3、单选题:
‎以下程序的输出结果是:‍‎‍#include <stdio.h>
int main() 

    int a=1, b=2; 
    a=a+b; 
    b=a-b; 
    a=a-b; 
    printf(“%d,%dn”, a, b );
    return 0;  
}‍‎‍

A: 2,1
B: 3,1
C: 3,2
D: 1,2
答案:  2,1

4、单选题:
‎程序运行后的输出结果是#include <stdio.h>
int main()

    int m=3,n=4,x;
    x=m++;
    ++n;
    x=x+8/n;
    printf(“%d,%dn”,x,m);
    return 0;
}‏

A: 4,4
B: 4,3
C: 5,4
D: 5,3
答案:  4,4

5、单选题:
​下面程序的运行结果是​​#include  <stdio.h>
int main()
{
    int    a = 2, b = 3 ;
    float  x = 3.5, y = 2.5 ;
    printf(“%f”, (float)(a+b) / 2 + (int)x % (int)y) ;
    return 0;
}​​​

A: 3.500000
B: 3.000000
C: 3.5
D: 3
答案:  3.500000

6、单选题:
‌以下非法的赋值语句是‌

A: ++(i+1);
B: x=(j–);
C: n=++i;
D: j++;
答案:  ++(i+1);

7、单选题:
‎设a和b均为double型变量,且a=5.5、b=2.5,则表达式(int)a+b/b的值是‎

A: 6.000000
B:  6.500000
C: 6             
D: 5.500000  
答案:  6.000000

8、单选题:
 以下程序的运行结果是‎#include <stdio.h>
int main() 

    int  a = 12, b = 3; 
    float  x = 18.5, y = 4.5; 
    printf(“%fn”, (float)(a * b) / 2); 
    printf(“%dn”, (int)x %(int)y); 
    return 0;
}‎

A: 18.0000002
B: 182
C: 182.000000
D: 18.0000002.000000
答案:  18.0000002

9、单选题:
‍设有语句“int a = 3;”,执行语句“a += a -= a * a;”后,变量a的值是‎

A: -12
B: 3
C: 0
D: 9
答案:  -12

10、单选题:
‏在C语言中,要求操作数必须是整型的运算符是​

A: %
B: /
C: *
D: +
E: –
答案:  %

11、单选题:
‌程序运行后的输出结果是#include <stdio.h>
int main()

    char a=’a’;
    printf(“%c,”,++a);
    printf(“%cn”,a++);
    return 0;
}‎

A:  b,b
B: b,c
C: a,b
D: a,c
答案:   b,b

12、单选题:
‏下面哪条语句可以生成0-9之间的随机数‍

A: magic=rand()%10;
B: magic=rand()%10+1;
C: magic=rand()/10;
D: magic=rand()/10+1;
答案:  magic=rand()%10;

13、单选题:
‎在下面的C语言语句中,存在错误的是​

A: int a=b=10;
B: int a=10,b=10;
C: int a,b;a=b=10;
D: int a,b;a=10;b=10;
答案:  int a=b=10;

14、单选题:
‎若以下选项中的变量已正确定义,则正确的赋值语句是‌

A: x3=x2=x1=0; 
B: x1=26.8%3;
C: 1+2=x2; 
D: x4=1+2=3;
答案:  x3=x2=x1=0; 

15、单选题:
‌若有以下定义,则表达式“a * b + d – c”的值的类型为‏‌#include <stdio.h>
int main()
{
    char  a;
    int b;
    float  c;
    double d;
    ….
    return 0;
}‏

A: double
B: int
C: float
D: char
答案:  double

16、单选题:
‎在C程序中如果要使用数学函数,如sin(x),log(x)等,需要在程序中加入的语句是​

A: #include <math.h>
B: #include <stdio.h>
C: #define <math.h>
D: #define <stdio.h>
答案:  #include <math.h>

17、单选题:
‎十进制3位数整数x,下面哪条语句能正确分离出它的十位上的数字d?‍

A: d=(x-(x/100)*100)/10;
B: d=(x%100)/10;
C: d=(x/10)%10;
D: d=x%10;
E: d=(x-x%10)/10;
F: d=x%100;
答案:  d=(x-(x/100)*100)/10;;
d=(x%100)/10;;
d=(x/10)%10;

18、单选题:
‍在C语言中对下面的语句而言,哪个说法是错误的?‎‍int a, b;‎

A: 变量a和b中的值都是0
B: 变量a和b中都没有数值
C: 变量a和b中的值都是未知的随机数
D: a和b都是整型变量
E: 变量a和b占用的内存空间的大小是相同的
答案:  变量a和b中的值都是0;
变量a和b中都没有数值

19、单选题:
‌已知int a,b;并且有a=5%3;以及b=5/3;,则a和b的值分别是(     )。‎

A: 2和1
B: 0和1.67
C: 3和1
D: 5和1
E: 0和1
F: 3和1.67
G: 5和1.67
答案:  2和1

20、单选题:
‎设有以下定义,则下面给出的语句中错误的是‏‎int a=0; 
float b=1.25;
char c=’A’;
#define d 2‏

A: d++;
B: (a+b)++;
C: (-a)++;
D: (a+1)++;
E: a++;
F: b++;
G: c++;
答案:  d++;;
(a+b)++;;
(-a)++;;
(a+1)++;

练兵区——单选题——不计入总分

1、单选题:
​设有语句“int a = 3;”,执行语句“a += a -= a * a;”后,变量a的值是‍

A: -12
B: 3
C: 0
D: 9
答案:  -12

2、单选题:
‌在C程序中如果要使用数学函数,如sin(x),log(x)等,需要在程序中加入的语句是​

A: #include <math.h>
B: #include <stdio.h>
C: #define <math.h>
D: #define <stdio.h>
答案:  #include <math.h>

3、单选题:
‍设有以下定义,则下面给出的语句中错误的是‎‍int a=0; 
float b=1.25;
char c=’A’;
#define d 2‎

A: d++;
B: (a+b)++;
C: (-a)++;
D: (a+1)++;
E: a++;
F: b++;
G: c++;
答案:  d++;;
(a+b)++;;
(-a)++;;
(a+1)++;

4、单选题:
‏下列关于单目运算符++、–的叙述中正确的是‍

A: a++的运算过程是:先使用变量a的值,然后再执行a=a+1。
B: ++a的运算过程是:先使用变量a的值,然后再执行a=a+1。
C: a++的运算过程是:先执行a=a+1,然后再使用变量a的值。
D: a++和++a都是最终使变量a执行a=a+1,因此对于包含a++或++a的表达式而言(如j=a++;或者j=++a;),两种情况下表达式的最终运算结果一定是相同的。
答案:  a++的运算过程是:先使用变量a的值,然后再执行a=a+1。

5、单选题:
‌以下程序的输出结果是:‏#include <stdio.h>
int main() 

    int a=1, b=2; 
    a=a+b; 
    b=a-b; 
    a=a-b; 
    printf(“%d,%dn”, a, b );  
    return 0;
}

A: 2,1
B: 3,1
C: 3,2
D: 1,2
答案:  2,1

6、单选题:
‌下面哪条语句可以生成0-9之间的随机数‍

A: magic=rand()%10;
B: magic=rand()%10+1;
C: magic=rand()/10;
D: magic=rand()/10+1;
答案:  magic=rand()%10;

7、单选题:
‏在下面的C语言语句中,存在错误的是‏

A: int a=b=10;
B: int a=10,b=10;
C: int a,b;a=b=10;
D: int a,b;a=10;b=10;
答案:  int a=b=10;

8、单选题:
‌若有以下定义,则表达式“a * b + d – c”的值的类型为‍‌#include <stdio.h>
int main()
{
    char  a;
    int b;
    float  c;
    double d;
    ….
    return 0;
}‍

A: double
B: int
C: float
D: char
答案:  double

9、单选题:
‎十进制3位数整数x,下面哪条语句能正确分离出它的十位上的数字d?‎

A: d=(x-(x/100)*100)/10;
B: d=(x%100)/10;
C: d=(x/10)%10;
D: d=x%10;
E: d=(x-x%10)/10;
F: d=x%100;
答案:  d=(x-(x/100)*100)/10;;
d=(x%100)/10;;
d=(x/10)%10;

10、单选题:
在C语言中对下面的语句而言,哪个说法是错误的?‏int a, b;‏

A: 变量a和b中的值都是0
B: 变量a和b中都没有数值
C: 变量a和b中的值都是未知的随机数
D: a和b都是整型变量
E: 变量a和b占用的内存空间的大小是相同的
答案:  变量a和b中的值都是0;
变量a和b中都没有数值

11、单选题:
‍下列程序的输出结果是‌#include <stdio.h>
int main()

   int a=7,b=5;   
   printf(“%dn”,b/a);
   return 0;   
}

A: 0
B: 5
C: 1
D: 0.7
答案:  0

12、单选题:
​程序运行后的输出结果是‍#include <stdio.h>
int main()

    int m=3,n=4,x;
    x=m++;
    ++n;
    x=x+8/n;
    printf(“%d,%dn”,x,m);
    return 0;
}

A: 4,4
B: 4,3
C: 5,4
D: 5,3
答案:  4,4

13、单选题:
‏下面程序的运行结果是‍#include  <stdio.h>
int main()
{
    int    a = 2, b = 3 ;
    float  x = 3.5, y = 2.5 ;
    printf(“%f”, (float)(a+b) / 2 + (int)x % (int)y) ;
    return 0;
}

A: 3.500000
B: 3.000000
C: 3.5
D: 3
答案:  3.500000

14、单选题:
​以下非法的赋值语句是‌

A: ++(i+1);
B: x=(j–);
C: n=++i;
D: j++;
答案:  ++(i+1);

15、单选题:
​已知int a,b;并且有a=5%3;以及b=5/3;,则a和b的值分别是‏

A: 2和1
B: 0和1.67
C: 3和1
D: 5和1
E: 0和1
F: 3和1.67
G: 5和1.67
答案:  2和1

16、单选题:
‏设a和b均为double型变量,且a=5.5、b=2.5,则表达式(int)a+b/b的值是‍

A: 6.000000
B:  6.500000
C: 6
D: 5.500000  
答案:  6.000000

17、单选题:
‎以下程序的运行结果是‍#include <stdio.h>
int main() 

    int  a = 12, b = 3; 
    float  x = 18.5, y = 4.5; 
    printf(“%fn”, (float)(a * b) / 2); 
    printf(“%dn”, (int)x %(int)y); 
    return 0;
}

A: 18.0000002
B: 182
C: 182.000000
D: 18.0000002.000000
答案:  18.0000002

18、单选题:
‌在C语言中,要求操作数必须是整型的运算符是‍

A: %
B: /
C: *
D: +
E: –
答案:  %

19、单选题:
‌程序运行后的输出结果是​‌​#include <stdio.h>
int main()

    char a=’a’;
    printf(“%c,”,++a);
    printf(“%cn”,a++);
    return 0;
}

A: b,b
B: b,c
C: a,b
D: a,c
答案:  b,b

20、单选题:
‍若以下选项中的变量已正确定义,则正确的赋值语句是‌

A: x3=x2=x1=0; 
B: x1=26.8%3;
C: 1+2=x2; 
D: x4=1+2=3;
答案:  x3=x2=x1=0; 

运算符的优先级和结合性

1、判断题:
‌二元的算术运算符的结合性都是左结合。​

A: 正确
B: 错误
答案:  正确

第3周——从键盘中来到键盘中去开始输入和输出啦

%c格式转换说明

1、判断题:
‎用c格式符输入字符型数据的时候,为了避免将输入缓冲区中的空白字符(空格、回车换行符、Tab键)作为有效字符读入,可以在%c前面加一个空格。‍

A: 正确
B: 错误
答案:  正确

单个字符的输入输出

1、判断题:
‎单个字符既可以以c格式符也可以以d格式符输出,前者是输出这个字符,后者是输出这个字符的ASCII码值。‍

A: 正确
B: 错误
答案:  正确

格式字符

1、判断题:
‍在调用printf函数输出数据时,当数据的实际位宽大于printf函数中的指定位宽时,将按照数据的实际位宽输出数据。​

A: 正确
B: 错误
答案:  正确

第3周测验

1、单选题:
‎分析下列程序,写出程序运行结果‎‎#include <stdio.h>
int main()

    char c1 = ‘a’, c2 = ‘b’, c3 = ‘c’;
    printf(“a%cb%cc%cabcn”, c1, c2, c3);
    return 0;
}‎

A: aabbccabc
B: acbcabc
C: aabcabc
D: acbbcabc
答案:  aabbccabc

2、单选题:
‎‎有如下语句,为使变量a的值为1,b的值为2,从键盘输入数据的正确形式是‎‎scanf(“a=%d,b=%d”,&a,&b);‎‎

A: a=1,b=2
B: 1 2
C: 1,2
D: a=1 b=2
答案:  a=1,b=2

3、单选题:
‎#include <stdio.h>
int main()

    int a,b,c,d;
    scanf(“%c%c%d,%d”,&a,&b,&c,&d);
    printf(“%c,%c,%c,%cn”,a,b,c,d);
    return 0;
}若运行以上程序时从键盘上输入:6565,66<回车>。则输出结果是‎

A: 6,5,A,B
B: 6,5,65,66
C: 6,5,6,5
D: 6,5,6,6
答案:  6,5,A,B

4、单选题:
‌给出程序的运行结果,程序运行时从键盘输入:54321<回车>‎‌#include <stdio.h>
int main()
{  
    int a,b,s;
    scanf(“%2d%2d”,&a,&b);
    s=a/b;
    printf(“s=%d”,s);
    return 0;
}‎

A: 1
B: 1.6875
C: 2
D: 0
答案:  1

5、单选题:
​以下程序的输出结果为‌​‌#include <stdio.h> 
int main() 

   float a = 1234.567,b = 55.32; 
   printf(“a = %4.2f, b = %5.1fn”, a,b); 
   return 0;
 }‌​‌

A: a = 1234.57, b = 55.3
B: a =1234, b =55
C: a = 1234.6, b = 5.32
D: a =1234.567, b = 55.32
答案:  a = 1234.57, b = 55.3

6、单选题:
‌以下程序的输出结果为‍‌#include <stdio.h>
int main()
{
      int a=2, c=5;
      printf(“a = %%d, b = %%dn”, a, c);
      return 0;
}‍

A: a = %d, b = %d
B: a = %2, b = %5
C: a = 2, b = 5
D: a = %%d, b = %%d
答案:  a = %d, b = %d

7、单选题:
​有以下程序,运行时若输入为B,则输出是‌​#include <stdio.h>
int main()
 { 
     char ch;
     ch=getchar();
     ch=ch+32;
     printf(“%c”,ch);
     return 0;
}‌

A: b
B: 98
C: 32
D: 66
答案:  b

8、单选题:
‌在调用printf函数输出数据时,当数据的实际位宽小于printf函数中的指定位宽时,下面叙述正确的是‎

A: 如果格式字符前面没有负号,那么输出的数据将会右对齐、左补空格;如果格式字符前面有负号,那么输出的数据将会左对齐、右补空格。
B: 如果格式字符前面没有负号,那么输出的数据将会左对齐、右补空格;如果格式字符前面有负号,那么输出的数据将会右对齐、左补空格。
C: 如果格式字符前面没有负号,那么输出的数据将会右对齐、左补0;如果格式字符前面有负号,那么输出的数据将会左对齐、右补0。
D: 如果格式字符前面没有负号,那么输出的数据将会左对齐、右补0;如果格式字符前面有负号,那么输出的数据将会右对齐、左补0。
答案:  如果格式字符前面没有负号,那么输出的数据将会右对齐、左补空格;如果格式字符前面有负号,那么输出的数据将会左对齐、右补空格。

9、单选题:
‌设有语句“char c=’72’;”,则变量c​

A: 包含1个字符
B: 包含2个字符
C: 包含3个字符
D: 不合法
答案:  包含1个字符

10、单选题:
‍在下列语句中存在错误的是‌

A: int a,b;scanf(“%d %f”,&a,&b);
B: int a,b;scanf(“%d %d”,a,b);
C: int a,b;scanf(“%d%dn”,&a,&b);printf(“%d %d”,a,b);
D: float a,b;scanf(“%3.2f %4.2f”,&a,&b);printf(“%f %f”,a,b);
E: float a,b;scanf(“%f %f”,&a,&b);printf(“%f %f”,a,b);
F: float a,b;scanf(“%f %f”,&a,&b);printf(“a=%4.3f,b=%4.3f”,a,b);
G: int a,b;scanf(“%2d%2d”,&a,&b);printf(“a=%d,b=%d”,a,b);
H: int a,b;scanf(“%d,%d”,&a,&b);printf(“a=%2d,b=%2d”,a,b);
I: int a,b;scanf(“a=%d,b=%d”,&a,&b);printf(“a=%d,b=%d”,a,b);
答案:  int a,b;scanf(“%d %f”,&a,&b);;
int a,b;scanf(“%d %d”,a,b);;
int a,b;scanf(“%d%dn”,&a,&b);printf(“%d %d”,a,b);;
float a,b;scanf(“%3.2f %4.2f”,&a,&b);printf(“%f %f”,a,b);

11、单选题:
‍程序运行后的输出结果是#include <stdio.h>
int main()

    int a=666,b=888;
    printf(“%dn”,a,b);
    return 0;
}​

A: 666
B: 错误信息 
C: 888  
D: 666,888
答案:  666

12、单选题:
‏有以下语句段#include <stdio.h>
int main()
{
    int n1=10,n2=20;
    printf(“_________”,n1,n2);
    return 0;
}要求按以下格式输出n1和n2的值,每个输出行都是从第一列开始,则空白处代码填写正确的是‍‏运行结果示例如下:‍‏n1=10‍‏n2=20‍

A: n1=%dnn2=%d
B: n1=%dn2=%dn
C: n1=%d,n2=%d
D: n1=%d n2=%dn
答案:  n1=%dnn2=%d

13、单选题:
‍以下选项中合法的字符常量是‍

A:  ’10’
B: “B”
C: 68
D: D
答案:   ’10’

14、单选题:
​写出下面程序的输出结果#include<stdio.h>
int main()
  {
     int x=6,y,z;
     x*=18+1;
     printf(“%d,”,x–);
     x+=y=z=11;
     printf(“%d”,x);
     return 0;
}‌

A: 114,124
B: 113,124
C: 109,116
D: 110,116
答案:  114,124

15、单选题:
‌给出程序的运行结果,程序运行时从键盘输入:45-12<回车>‏‌#include <stdio.h>
int main()
{  
    int a,b,sum;
    scanf(“%d%*c%d”,&a,&b);
    sum=a+b;
    printf(“sum=%d”,sum);
    return 0;
}‏

A: 57
B: 输出报错
C: 33
D: 输出一个随机数
答案:  57

16、单选题:
​给出程序的运行结果‏​#include <stdio.h>
int main()
{  
    int a,b,s;
    char op;
    scanf(“%d %c%d”,&a,&op,&b);
    s=a%b;
    printf(“s=%d”,s);
    return 0;
}‏​程序运行时从键盘输入:‏​15<回车>‏​%‏​5<回车>‏

A: 0
B: 程序报错
C: 输出一个随机数
D: 3
答案:  0

17、单选题:
‍给出程序的运行结果‎‍#include <stdio.h>
int main()
{
  int a,b,c,d;
  char op1,op2,op3;
  int sum;
  printf(“please input:a+b+c+dn”);
  scanf(“%d%c%d%c%d%c%d”,&a,&op1,&b,&op2,&c,&op3,&d);
  sum=a+b+c+d;
  printf(“sum=%d”,sum);
  return 0;
}‎‍程序运行时从键盘输入:‎‍1<回车>2+3+1<回车>‎

A: 7
B: 1
C: 3
D: 6
答案:  7

18、单选题:
‌在C语言中,字符型数据在内存中以(  )形式存放‏

A: ASCII码
B: 国标码
C: BCD码
D: 反码
答案:  ASCII码

19、单选题:
‍‍以下程序的执行结果是‎‎#include  <stdio.h> 
int main() 

   int  a = 5, b = 4, x, y; 
   x = 2 * a++;
   y = –b * 2; 
   printf(“a=%d, x=%dn”, a, x); 
   printf(“b=%d, y=%dn”, b, y); 
   return 0;
}

A: a=6,  x=10b=3,  y=6
B: a=6,  x=10b=3,  y=8
C: a=6,  x=12b=3,  y=6
D: 以上均不对
答案:  a=6,  x=10b=3,  y=6

20、单选题:
​以下程序运行后的输出结果是​​#include <stdio.h>
int main()

    int a; 
    int c=10;
    float f=100.0; 
    double x;
    a=f/=c*=(x=6.5);
    printf(“%d,%d,%3.1f,%3.1fn”,a,c,f,x);
    return 0;
}​

A: 1,65,1.5,6.5
B: 1,65,1,6.5
C: 1,65,1.0,6.5
D:  2,65,1.5,6.5
答案:  1,65,1.5,6.5

21、单选题:
​给出程序的运行结果‏​#include <stdio.h>
int main()
{
  char a,b;
  int s;
  printf(“please input a and b:n”);
  a=getchar();
  b=getchar();
  s=a+b;
  printf(“a=%c,b=%c”,a,b);
  return 0;
}‏​程序运行时从键盘输入:‏​1<空格>2<回车>‏

A: a=1,b=
B: a=1,b=2
C: a= ,b=2
D: 输出乱码
答案:  a=1,b=

22、单选题:
‏以下程序的输出结果是‌‏#include <stdio.h>
int main()
{
    int a=1234;
    printf(“%2dn”,a);
    return 0;
}‌

A: 1234
B: 12
C: 34
D: 提示出错、无结果
答案:  1234

练兵区——单选题——不计入总分

1、单选题:
‍以下程序的输出结果为‌‍‌#include <stdio.h> 
int main() 

   float a = 1234.567,b = 55.32; 
   printf(“a = %4.2f, b = %5.1fn”, a,b); 
   return 0;
 }

A: a = 1234.57, b = 55.3
B: a =1234, b =55
C: a = 1234.6, b = 5.32
D: a =1234.567, b = 55.32
答案:  a = 1234.57, b = 55.3

2、单选题:
‌以下选项中合法的字符常量是‎

A:  ’10’
B: “B”
C: 68
D: D
答案:   ’10’

3、单选题:
‏给出程序的运行结果‍程序运行时从键盘输入:‍1<空格>2<回车>‍‏#include <stdio.h>
int main()
{
  char a,b;
  int s;
  printf(“please input a and b:n”);
  a=getchar();
  b=getchar();
  s=a+b;
  printf(“a=%c,b=%c”,a,b);
  return 0;
}‍

A: a=1,b=
B: a=1,b=2
C: a= ,b=2
D: 输出乱码
答案:  a=1,b=

4、单选题:
‏有如下语句,为使变量a的值为1,b的值为2,从键盘输入数据的正确形式是‍‏scanf(“a=%d,b=%d”,&a,&b)‍

A: a=1,b=2
B: 1 2
C: 1,2
D: a=1 b=2
答案:  a=1,b=2

5、单选题:
#include <stdio.h>
int main()

    int a,b,c,d;
    scanf(“%c%c%d,%d”,&a,&b,&c,&d);
    printf(“%c,%c,%c,%cn”,a,b,c,d);
    return 0;
}‏若运行以上程序时从键盘上输入:6565,66<回车>。则输出结果是‎

A: 6,5,A,B
B: 6,5,65,66
C: 6,5,6,5
D: 6,5,6,6
答案:  6,5,A,B

6、单选题:
‌给出程序的运行结果,程序运行时从键盘输入:54321<回车>‏‌#include <stdio.h>
int main()
{  
    int a,b,s;
    scanf(“%2d%2d”,&a,&b);
    s=a/b;
    printf(“s=%d”,s);
    return 0;
}‏

A: 1
B: 1.6875
C: 2
D: 0
答案:  1

7、单选题:
‍在调用printf函数输出数据时,当数据的实际位宽小于printf函数中的指定位宽时,下面叙述正确的是‍

A: 如果格式字符前面没有负号,那么输出的数据将会右对齐、左补空格;如果格式字符前面有负号,那么输出的数据将会左对齐、右补空格。
B: 如果格式字符前面没有负号,那么输出的数据将会左对齐、右补空格;如果格式字符前面有负号,那么输出的数据将会右对齐、左补空格。
C: 如果格式字符前面没有负号,那么输出的数据将会右对齐、左补0;如果格式字符前面有负号,那么输出的数据将会左对齐、右补0。
D: 如果格式字符前面没有负号,那么输出的数据将会左对齐、右补0;如果格式字符前面有负号,那么输出的数据将会右对齐、左补0。
答案:  如果格式字符前面没有负号,那么输出的数据将会右对齐、左补空格;如果格式字符前面有负号,那么输出的数据将会左对齐、右补空格。

8、单选题:
‎程序运行后的输出结果是‎#include <stdio.h>
int main()

    int a=666,b=888;
    printf(“%dn”,a,b);
    return 0;
}

A: 666
B: 错误信息 
C: 888
D: 666,888
答案:  666

9、单选题:
‎在C语言中,字符型数据在内存中以(  )形式存放‏

A: ASCII码
B: 国标码
C: BCD码
D: 反码
答案:  ASCII码

10、单选题:
‌以下程序运行后的输出结果是​#include <stdio.h>
int main()

    int a; 
    int c=10;
    float f=100.0; 
    double x;
    a=f/=c*=(x=6.5);
    printf(“%d,%d,%3.1f,%3.1fn”,a,c,f,x);
    return 0;
}

A: 1,65,1.5,6.5
B: 1,65,1,6.5
C: 1,65,1.0,6.5
D:  2,65,1.5,6.5
答案:  1,65,1.5,6.5

11、单选题:
​以下程序的输出结果是‍​#include <stdio.h>
int main()
{
    int a=1234;
    printf(“%2dn”,a);
    return 0;
}‍

A: 1234
B: 12
C: 34
D: 提示出错、无结果
答案:  1234

12、单选题:
‎设有语句“char c=’72’;”,则变量c​

A: 包含1个字符
B: 包含2个字符
C: 包含3个字符
D: 不合法
答案:  包含1个字符

13、单选题:
‍有以下语句段‌#include <stdio.h>
int main()
{
    int n1=10,n2=20;
    printf(“_________”,n1,n2);
    return 0;
}‍要求按以下格式输出n1和n2的值,每个输出行都是从第一列开始,则空白处代码填写正确的是‌‍运行结果示例如下:‌‍n1=10‌‍n2=20‌

A: n1=%dnn2=%d
B: n1=%dn2=%dn
C: n1=%d,n2=%d
D: n1=%d n2=%dn
答案:  n1=%dnn2=%d

14、单选题:
​给出程序的运行结果,程序运行时从键盘输入:45-12<回车>‌#include <stdio.h>
int main()
{  
    int a,b,sum;
    scanf(“%d%*c%d”,&a,&b);
    sum=a+b;
    printf(“sum=%d”,sum);
    return 0;
}

A: 57
B: 输出报错
C: 33
D: 输出一个随机数
答案:  57

15、单选题:
‎给出程序的运行结果‎#include <stdio.h>
int main()
{  
    int a,b,s;
    char op;
    scanf(“%d %c%d”,&a,&op,&b);
    s=a%b;
    printf(“s=%d”,s);
    return 0;
}‎程序运行时从键盘输入:‎‎15<回车>‎‎%‎‎5<回车>‎

A: 0
B: 程序报错
C: 输出一个随机数
D: 3
答案:  0

16、单选题:
​分析下列程序,写出程序运行结果​#include <stdio.h>
int main()

    char c1 = ‘a’, c2 = ‘b’, c3 = ‘c’;
    printf(“a%cb%cc%cabcn”, c1, c2, c3);
    return 0;
}

A: aabbccabc
B: acbcabc
C: aabcabc
D: acbbcabc
答案:  aabbccabc

17、单选题:
‎以下程序的输出结果为‏#include <stdio.h>
int main()
{
      int a=2, c=5;
      printf(“a = %%d, b = %%dn”, a, c);
      return 0;
}

A: a = %d, b = %d
B: a = %2, b = %5
C: a = 2, b = 5
D: a = %%d, b = %%d
答案:  a = %d, b = %d

18、单选题:
‌有以下程序,运行时若输入为B,则输出是‌#include <stdio.h>
int main()
 { 
     char ch;
     ch=getchar();
     ch=ch+32;
     printf(“%c”,ch);
     return 0;
}

A: b
B: 98
C: 32
D: 66
答案:  b

19、单选题:
‍在下列语句中存在错误的是‏

A: int a,b;scanf(“%d %f”,&a,&b);
B: int a,b;scanf(“%d %d”,a,b);
C: int a,b;scanf(“%d%dn”,&a,&b);printf(“%d %d”,a,b);
D: float a,b;scanf(“%3.2f %4.2f”,&a,&b);printf(“%f %f”,a,b);
E: float a,b;scanf(“%f %f”,&a,&b);printf(“%f %f”,a,b);
F: float a,b;scanf(“%f %f”,&a,&b);printf(“a=%4.3f,b=%4.3f”,a,b);
G: int a,b;scanf(“%2d%2d”,&a,&b);printf(“a=%d,b=%d”,a,b);
H: int a,b;scanf(“%d,%d”,&a,&b);printf(“a=%2d,b=%2d”,a,b);
I: int a,b;scanf(“a=%d,b=%d”,&a,&b);printf(“a=%d,b=%d”,a,b);
答案:  int a,b;scanf(“%d %f”,&a,&b);;
int a,b;scanf(“%d %d”,a,b);;
int a,b;scanf(“%d%dn”,&a,&b);printf(“%d %d”,a,b);;
float a,b;scanf(“%3.2f %4.2f”,&a,&b);printf(“%f %f”,a,b);

20、单选题:
‌写出下面程序的输出结果‎#include<stdio.h>
int main()
  {
     int x=6,y,z;
     x*=18+1;
     printf(“%d,”,x–);
     x+=y=z=11;
     printf(“%d”,x);
     return 0;
}

A: 114,124
B: 113,124
C: 109,116
D: 110,116
答案:  114,124

21、单选题:
‌给出程序的运行结果‎#include <stdio.h>
int main()
{
  int a,b,c,d;
  char op1,op2,op3;
  int sum;
  printf(“please input:a+b+c+dn”);
  scanf(“%d%c%d%c%d%c%d”,&a,&op1,&b,&op2,&c,&op3,&d);
  sum=a+b+c+d;
  printf(“sum=%d”,sum);
  return 0;
}‌程序运行时从键盘输入:‎‌1<回车>2+3+1<回车>‎

A: 7
B: 1
C: 3
D: 6
答案:  7

22、单选题:
​以下程序的执行结果是​#include  <stdio.h> 
int main() 

   int  a = 5, b = 4, x, y; 
   x = 2 * a++;
   y = –b * 2; 
   printf(“a=%d, x=%dn”, a, x); 
   printf(“b=%d, y=%dn”, b, y); 
   return 0;
}

A: a=6,  x=10b=3,  y=6
B: a=6,  x=10b=3,  y=8
C: a=6,  x=12b=3,  y=6
D: 以上均不对
答案:  a=6,  x=10b=3,  y=6

第4周——无处不在的抉择

判断ch是英文字母大写或者小写

1、判断题:
‎下面判断ch是大写或者小写英文字母的表达式是否正确?‍‎ch >= ‘A’ &&  ch <= ‘Z’ || ch >= ‘a’  &&  ch <= ‘z’‍

A: 正确
B: 错误
答案:  正确

条件运算符

1、单选题:
‎下列关于if-else语句的说法中哪个是正确的。‏

A: else总是和离它最近的if配对
B: else总是和前面离它最近的且还未和其他else匹配的在同一语句块内同一层次的if配对
C: else总是和前面离它最近的且位于花括号内的if配对
D: else可以和它前面的尚未与其他else匹配的任何一个if配对
答案:  else总是和前面离它最近的且还未和其他else匹配的在同一语句块内同一层次的if配对

2、判断题:
‎条件运算符是C语言中唯一的一个三元运算符.‎

A: 正确
B: 错误
答案:  正确

浮点数的表数精度

1、单选题:
​下列说法错误的是()。‏

A: 浮点数并非真正意义上的实数,只是其在某种范围内的近似。
B: 浮点数能精确表示的数字位数取决于这种类型的浮点数的有效数字位数。
C: 使用更多的位来存储阶码,将会扩大浮点数的表数精度。
D: 受浮点数表数精度的限制,因此对于浮点数不能直接比较其是否相等,应该比较其是否近似相等。
答案:  使用更多的位来存储阶码,将会扩大浮点数的表数精度。

程序测试

1、单选题:
‎下列说法错误的是()。‌

A: 软件测试的目的就是证明程序的正确性,即给定特定的输入,通过运行被测程序,检查程序的输出是否与预期结果一致,进而验证程序的正确性。
B: 白盒测试就是在完全了解程序的结构和处理过程的情况下,按照程序内部的逻辑测试程序,检验程序中的每条逻辑路径是否都能按预定要求正确工作。黑盒测试就是把系统看成一个黑盒子,不考虑程序内部的逻辑结构和处理过程,只根据需求规格说明书的要求,设计测试用例,检查程序的功能是否符合它的功能说明。
C: 在选择测试用例时,不仅要选取合理的输入数据,还要选取一些不合理的输入数据,以及某些极端的边界点或临界点等,对程序进行测试
D: 由于修复了旧的bug的同时,往往又会产生新的bug,因此往往还需要对所有出现过的bug重新测试一遍,看其是否会重新出现,并给确认代码修改后没有引入新的bug,即修改代码后需要进行回归测试。
答案:  软件测试的目的就是证明程序的正确性,即给定特定的输入,通过运行被测程序,检查程序的输出是否与预期结果一致,进而验证程序的正确性。

第4周测验

1、单选题:
​程序代码如下:‏#include <stdio.h>
int main()
{
  int a,b;
  printf(“please input a and b:n”);
  scanf(“%d%d”,&a,&b);
  printf(“the output data is %dn”,a<b?b:a);
  return 0;
}​从键盘输入以下数据:‏​2<回车>‏​7<回车>‏​则程序输出为‏

A: the output data is 7
B: the output data is 2
C: the output data is 1
D: the output data is 0
答案:  the output data is 7

2、单选题:
‍以下程序运行后的输出结果是‎‍#include <stdio.h>
int main()
{ int a,b,c;
  a=10;
  b=20;
  c=(a%b<1)||(a/b>1);
  printf(“%d,%d,%d”,a%b,a/b,c);
  return 0;
}‎‎

A: 10,0,0
B: 10,1,0
C: 10,0,1
D: 10,1,1
答案:  10,0,0

3、单选题:

从键盘输入三角形的三边长为a,b,c,按下面公式计算并输出三角形的面积。

C语言程序设计精髓(DJX周亚运)(柳州工学院)1452351203 中国大学MOOC答案100分完整版第1张

程序代码如下,但程序运行后输出结果不正确,请找出有问题的语句。

#include <stdio.h>
#include  <math.h>
int main()
{
    float  a, b, c;             
    float  s, area;                
    printf("Input a,b,c:");
    scanf("%f,%f,%f",&a,&b,&c);
    if (a+b>c && b+c>a && a+c>b)  
    {
       s = 1/2 * (a + b + c); 
       area = sqrt(s * (s - a) * (s - b) * (s - c));
       printf("area=%.2fn", area); 
    }
    else
    {
       printf("It is not a trianglen");    
    }
    return 0; 
}


A: 第11行:   s = 1/2 * (a + b + c); 
B: 第9行:   if (a+b>c && b+c>a && a+c>b)  
C: 第12行:   area = sqrt(s * (s – a) * (s – b) * (s – c));
D: 第8行:  scanf(“%f,%f,%f”,&a,&b,&c);
答案:  第11行:   s = 1/2 * (a + b + c); 

4、单选题:
​编程设计一个简单的计算器程序,要求用户从键盘输入如下形式的表达式:‍​        操作数1    运算符op    操作数2‍​然后,计算并输出表达式的值‍​指定的运算符为:‍​    加(+)‍​    减(-)‍​    乘(*)‍​    除(/)‍​‍​代码如下,所给程序是否存在错误,若有,找出错误所在并改正。‍​#include <stdio.h>
int main()
{
         float    data1, data2;            
         char   op;
         printf(“Please enter the expression:”);
         scanf(“%f  %c%f”, &data1, &op, &data2); /* %c前有一个空格 */ 
         switch (op) 
         {
                   case ‘+’:
                            printf(“%f + %f = %fn”, data1, data2, data1 + data2); 
                            break;
                   case ‘-‘:
                            printf(“%f – %f = %fn”, data1, data2, data1 – data2);
                            break;
                   case ‘*’:
                            printf(“%f * %f = %fn”, data1, data2, data1 * data2); 
                            break;
                   case ‘/’:
                            printf(“%f/%f = %fn”, data1, data2,data1/data2); 
                            break;
                   default: 
                            printf(“Invalid operator!n”);
         }
        return 0;
}‍

A: 第20行语句有错误,改成:if (fabs(data2)<=EPS) printf(“Division by zero!n”);else  printf(“%f/%f = %fn”, data1, data2, data1/data2);同时,第1行语句下方应加入#include  <math.h>#define   EPS 1e-6
B: default分支缺少break语句
C: 没有错误
D: 第20行语句有错误,改成:if (data2=0) printf(“Division by zero!n”);else  printf(“%f/%f = %fn”, data1, data2, data1/data2);
答案:  第20行语句有错误,改成:if (fabs(data2)<=EPS) printf(“Division by zero!n”);else  printf(“%f/%f = %fn”, data1, data2, data1/data2);同时,第1行语句下方应加入#include  <math.h>#define   EPS 1e-6

5、单选题:
‏若x和y代表整型数,以下表达式中不能正确表示数学关系|x-y|<10的是‏

A: (x-y)<-10||!(y-x)>10
B:  fabs(x-y)<10
C: x-y>-10 && x-y<10
D: (x-y)*(x-y)<100
答案:  (x-y)<-10||!(y-x)>10

6、单选题:
​下列复合语句中,不能实现两数交换的是‌

A: {
  a=b;
  b=a;
}
B: {
    b = a * b;
    a = b / a;
    b = b / a; 
}
C: {
   t=a;
   a=b;
   b=t;
}
D: {
    a = a + b;
    b = a – b;
    a = a – b; 
}
答案:  {
  a=b;
  b=a;
}

7、单选题:
‎写出下面程序的输出结果‌‎#include <stdio.h>
int main()

   int x=1, y=0, a=0, b=0;
   switch(x)
   {  
       case 1:
              switch(y)
              {
                case 0: a++; 
                case 1: b++;
              }
      case 2:  a++;
               b++;
   }
   printf(“a=%d, b=%dn”, a, b) ;
   return 0;
}‌

A: a=2, b=2
B: a=2, b=1
C: a=1, b=1
D: a=1, b=0
答案:  a=2, b=2

8、单选题:
‎以下程序运行后的输出结果是‎‎#include <stdio.h>
int main()

   int a=5,b=4,c=3,d;
   d=(a>b>c);
   printf(“%dn”,d);
   return 0;
}‎‎

A: 0
B: 1
C: 5
D: 4
E: 3
答案:  0

9、单选题:
‏执行以下程序后的输出结果为‌‏#include <stdio.h>
int main()
{
   int a=1,b=0;
   switch (a)
   {  
     case  1:
            switch (b)
            {   
               case  0: printf(“**0**”);break;
               case  1: printf(“**1**”);break;
            }
    case  2: printf(“**2**”);break;
   }
  return 0;
}‌‏‌

A: **0****2**
B: **0**
C: **0****1****2**
D: 有语法错误
答案:  **0****2**

10、单选题:
‎下面程序运行后的输出结果是‏‎#include <stdio.h> 
int main()
{
    int a=3,b=4,c=5,d=2;
    if(a>b)
   &nb



上方为免费预览版答案,如需购买完整答案,请点击下方红字:



点击这里,购买完整版答案


为了方便下次阅读,建议在浏览器添加书签收藏本网页

添加书签方法:

1.电脑按键盘的Ctrl键+D键即可收藏本网页

2.手机浏览器可以添加书签收藏本网页

点击浏览器底部菜单-【添加书签】-收藏本网页

C语言程序设计精髓(DJX周亚运)(柳州工学院)1452351203 中国大学MOOC答案100分完整版第2张

点击浏览器底部菜单-【书签/历史】-可查看本网页

C语言程序设计精髓(DJX周亚运)(柳州工学院)1452351203 中国大学MOOC答案100分完整版第3张


获取更多慕课答案,欢迎在浏览器访问我们的网站:



http://mooc.mengmianren.com

C语言程序设计精髓(DJX周亚运)(柳州工学院)1452351203 中国大学MOOC答案100分完整版第4张

C语言程序设计精髓(DJX周亚运)(柳州工学院)1452351203 中国大学MOOC答案100分完整版第5张

注:请切换至英文输入法输入域名,如果没有成功进入网站,请输入完整域名:http://mooc.mengmianren.com/


我们的公众号

打开手机微信,扫一扫下方二维码,关注微信公众号:萌面人APP

本公众号可查看各种网课答案,还可免费查看大学教材答案

点击这里,可查看公众号功能介绍

C语言程序设计精髓(DJX周亚运)(柳州工学院)1452351203 中国大学MOOC答案100分完整版第6张




APP下载



点击这里下载萌面人APP,使用更方便!




APP功能说明

1.可查看各种网课答案

点击【萌面人官网】,可查看知到智慧树,超星尔雅学习通,学堂在线等网课答案

C语言程序设计精髓(DJX周亚运)(柳州工学院)1452351203 中国大学MOOC答案100分完整版第7张

点击【中国大学慕课答案】,可查看mooc慕课答案

C语言程序设计精髓(DJX周亚运)(柳州工学院)1452351203 中国大学MOOC答案100分完整版第8张

2.可一键领取淘宝/天猫/京东/拼多多无门槛优惠券

如图所示,点击对应图标即可领取淘宝/天猫/京东/拼多多无门槛优惠券

C语言程序设计精髓(DJX周亚运)(柳州工学院)1452351203 中国大学MOOC答案100分完整版第9张


胜袜尾铂卑钉清物刑绥蔫绦瞳