




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
C程序設計-北方工業大學中國大學IDOOC
第1章一初識C語言從認識變量和常量開始
1.2C語言集成開發環境簡介(16分鐘)隨堂測驗
1、#includevstdio.h>是
A、編譯預處理指令
B、語句
C、函數
D、程序入口
參考答案:A
1.2C語言集成開發環境簡介(16分鐘)隨堂測驗
1、codeblocks中運行到下一步(nextline)的快捷鍵是
A、F7
B、F5
C、F8
D、F11
參考答案:A
1.4變量的表數范圍和存儲形式(29分鐘)隨堂測驗
1、C語言用sizeof計算變量在內存中的字節數,其中sizeof是()
A、函數
B、運算符
C、標識符
D、語句
參考答案:B
1.5宏常量與const常量(13分鐘)隨堂測驗
1、宏定義是()
A、一條語句
B、一種編譯預處理指令
C、一個標識符
D、一個變量
參考答案:B
2、const常量有數據類型。
參考答案:正確
第1章測驗
1、下列選項中,合法的C語言標識符是
A、_a1
B、width.x
C、#abc123
D、123abc
E、o*k
F、a?
G、a+b
H、%a
I、b!
參考答案:A
2、以下不適合定義為用戶標識符的是
A、int
B、a2
C、def2
D、_3com_
E、PI
F、Source
G、abc
參考答案:A
3、#includevstdio.h>是
A、編譯預處理指令
B、語句
C、函數
D、什么都不是
E、有語法錯誤
參考答案:A
4、在windows下,程序編譯鏈接后形成的可執行文件是
A、.obj文件
B、.exe文件
o文件
C,?
c文件
D,?
E.h文件
?
參考答案:B
5、程序編譯鏈接后顯示"0error,0warning"代表
A、程序中沒有語法錯誤
B、程序是正確的
C、程序是不正確的
D、程序中可能存在語法錯誤
E、程序中有語義錯誤
參考答案:A
6、用8位無符號二進制數能表示的最大十進制數為
A、255
B、127
C、128
D、256
參考答案:A
7、關于可執行文件說法正確的是
A、可執行文件是編譯鏈接后生成的文件
B、可執行文件就是源代碼文件
C、可執行文件后綴為.obj
D、可執行文件就是main.c文件
參考答案:A
8、若變量a是int類型,并執行了語句:a='A'+1.6;,則正確的敘述是
A、'A'+1.6的結果是浮點型
B、a的值還是整型
C、a的值是字符C
D、a的值是浮點型
E、不允許字符型和浮點型相加
參考答案:AB
9、C語言用sizeof計算變量在內存中的字節數,其中sizeof是()
A、運算符
B、一元運算符
C、只需要一個操作數的運算符
D、函數
E、語句
F、標識符
G、變量
參考答案:ABC
10、以下不屬于Codeblocks中用于調試程序的工具是
A、run
B、build
C、runtocursor
D、nextline
E、stopdebugger
F、watches
參考答案:AB
11、程序的開發步驟中不包括
A、撰寫文檔
B、運行程序
C、編譯鏈接
D、程序測試
E、編輯(編寫代碼)
參考答案:A
12、下列說法中錯誤的是()
A、尾數決定了實數的表數范圍,階碼決定了實數的表數精度。
B、內存是按位編址的。
C、有符號和無符號整數的表數范圍是相同的。
D、int型在所有的計算機上都占4個字節的存儲單元。
E、編譯器按變量定義的類型對不同類型的變量分配不同大小的內存空間。
F、內存是按字節編址的。
G、對于同樣的尾數,階碼的值越大,則浮點數所表示的數值的絕對值就越大。
H、sizeof是編譯時執行的運算符,不會導致額外的運行時間開銷。
參考答案:ABCD
13、若有定義:inta=8,b=5,c;,執行語句c=a/b+0.4;后,c的值為
A、1
B、1.4
C、2.0
D、2
參考答案:A
14、在C語言中,字符型數據在內存中以字符的()形式存放
A,ASCII碼
B、國標碼
C、BCD碼
D、反碼
參考答案:A
15、以下符合C語言語法的實型常量是
A、5e_3
B、3.14.159e
C、1.2e0.5
D、e15
參考答案:A
16、以下選項中可作為C語言合法整數的是
A、Oxffa
B、10110B
C、038x
D、x2a2
參考答案:A
17、下列說法正確的是
A、在C語言中,變量必須先定義后使用。
B、一條變量定義語句可定義多個同類型的變量。
C、C89規定所有變量必須在第一條可執行語句前定義。
D、const常量只能在定義時賦值。
E、實型常量的默認類型是double類型。
F、一條變量定義語句不可以同時定義多個變量。
G、不同類型的變量分配的存儲空間大小都是相同的。
H、在C語言中,所有變量都必須在定義時進行初始化。
I、變量在沒有初始化的時候,其值都是0
J、宏常量有數據類型,編譯器在宏替換時可以進行類型檢查。
參考答案:ABCDE
18、下列變量定義中合法的是
A、longao=0xfdaL;
B、short_a=1-.1e-1;
C、doubleb=1+5e2.5;
D、float2_and=1-e-3;
參考答案:A
練兵區——單選題——不計入總分
1、下列選項中,合法的C語言標識符是
A、_a1
B、width
C、#abc123
D、123abc
E、o*k
F、a?
G、a+b
H、%a
I、b!
參考答案:AB
2、以下不適合定義為用戶標識符的是
A、float
B、main
C、define
D、_3com_
E、PI
F、Source
G、abc
參考答案:ABC
3、#include<stdio.h>是
A、編譯預處理指令
B、語句
C、函數
D、什么都不是
E、有語法錯誤
參考答案:A
4、在windows下,程序編譯鏈接后形成的可執行文件是
A、.obj文件
B、.exe文件
C、.。文件
D、.c文件
E、.h文件
參考答案:B
5、程序編譯鏈接后顯示"0error,。warning"代表
A、程序中沒有語法錯誤
B、程序是正確的
C、程序是不正確的
D、程序中可能存在語法錯誤
E、程序中有語義錯誤
參考答案:A
6、用8位無符號二進制數能表示的最大十進制數為
A、255
B、127
C、128
D、256
參考答案:A
7、關于可執行文件說法正確的是
A、可執行文件是編譯鏈接后生成的文件
B、可執行文件就是源代碼文件
C、可執行文件后綴為.obj
D、可執行文件就是main.c文件
參考答案:A
8、若變量a是int類型,并執行了語句:a='A'+1.6;,則正確的敘述是
A、A+1.6的結果是浮點型
B、a的值還是整型
C、a的值是字符C
D、a的值是浮點型
E、不允許字符型和浮點型相加
參考答案:AB
9^C語言用sizeof計算變量在內存中的字節數,其中sizeof是()
A、運算符
B、一元運算符
C、只需要一個操作數的運算符
D、函數
E、語句
F、標識符
G、變量
參考答案:ABC
10、以下不屬于Codeblocks中用于調試程序的工具是
A、run
B、build
C、runtocursor
D、nextline
E、stopdebugger
F、watches
參考答案:AB
11、程序的開發步驟中不包括
A、撰寫文檔
B、運行程序
C、編譯鏈接
D、程序測試
E、編輯(編寫代碼)
參考答案:A
12、下列說法中錯誤的是()
A、尾數決定了實數的表數范圍,階碼決定了實數的表數精度。
B、內存是按位編址的。
C、有符號和無符號整數的表數范圍是相同的。
D、int型在所有的計算機上都占4個字節的存儲單元。
E、編譯器按變量定義的類型對不同類型的變量分配不同大小的內存空間。
F、內存是按字節編址的。
G、對于同樣的尾數,階碼的值越大,則浮點數所表示的數值的絕對值就越大。
H、sizeof是編譯時執行的運算符,不會導致額外的運行時間開銷。
參考答案:ABCD
13、若有定義:inta=8,b=5,c;,執行語句c=a/b+0.4;后,c的值為
A、1
B、1.4
C、2.0
D、2
參考答案:A
14、在C語言中,字符型數據在內存中以字符的()形式存放
A、ASCII碼
B、國標碼
C、BCD碼
D、反碼
參考答案:A
15、以下符合C語言語法的實型常量是
A、5e-3
B、3.14.159e
C、1.2e0.5
D、e15
參考答案:A
16、以下選項中可作為C語言合法整數的是
A、Oxffa
B、10110B
C、038x
D、x2a2
參考答案:A
17、下列說法正確的是
A、在C語言中,變量必須先定義后使用。
B、一條變量定義語句可定義多個同類型的變量。
C、C89規定所有變量必須在第一條可執行語句前定義。
D、const常量只能在定義時賦值。
E、實型常量的默認類型是double類型。
F、一條變量定義語句不可以同時定義多個變量。
G、不同類型的變量分配的存儲空間大小都是相同的。
H、在C語言中,所有變量都必須在定義時進行初始化。
I、變量在沒有初始化的時候,其值都是0
J、宏常量有數據類型,編譯器在宏替換時可以進行類型檢查。
參考答案:ABCDE
18、下列變量定義中合法的是
A、longao=0xfdaL;
B、short_a=1-.1e-1;
C、doubleb=1+5e2.5;
D、float2_and=1-e-3;
參考答案:A
練兵區——編程題—不計入總分
1、helloworld!
參考答案:暫無答案
2、在屏幕上輸出多行信息
參考答案:暫無答案
3、計算半圓弧長及半圓的面積。
參考答案:暫無答案
4、計算長方體體積
參考答案:暫無答案
第2章一一數字間的那些事兒,做點計算哈
2.1算術運算(20分鐘)隨堂測驗
1、二元的算術運算符的結合性都是左結合。
參考答案:正確
2.2賦值運算(15分鐘)隨堂測驗
1、下列語句中錯誤的是()o
A、inta,b,c;a=b=c=0;
B、inta,b,c;a=0;b=0;c=0;
inta=0;intb=0;intc=0;
D>inta=b=c=O;
參考答案:D
2.4自動類型轉換(5分鐘)隨堂測驗
1、通常情況下,不同類型數據的運算結果的類型是取值范圍較大的那種類型。
參考答案:正確
2.5強制類型轉換(7分半)隨堂測驗
1、強制類型轉換運算符就是強制改變一個變量原有的數據類型。
參考答案:錯誤
第2章測驗
1、下列程序的輸出結果是#include<stdio.h>intmain(){inta=7,b=5;
printf("%d\n",b/a);return0;}
A、0
B、5
C、1
D、0.7
參考答案:A
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
3、以下程序的輸出結果是:include<stdio.h>intmain(){inta=1,b=2;a=a+b;
b=a-b;a=a-b;printf("%d,%d\n",a,b);return0;}
A、2,1
B、3,1
C、3,2
D、1,2
參考答案:A
4、程序運行后的輸出結果是#include<stdio.h>intmain(){intm=3,n=4,x;x=m++;
++n;x=x+8/n;printf("%d,%d\n",x,m);return0;}
A、4,4
B、4,3
C、5,4
D、5,3
參考答案:A
5、下面程序的運行結果是#include<stdio.h>intmain(){inta=2,b=3;floatx=
3.5,y=2.5;printf("%f",(float)(a+b)/2+(int)x%(int)y);return0;}
A、3.500000
B、3.000000
C、3.5
D、3
參考答案:A
6、以下非法的賦值語句是
A、++(i+1);
B、x=(H;
C、n=++i;
D、j++;
參考答案:A
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
參考答案:A
8、以下程序的運行結果是include<stdio.h>intmain(){inta=12,b=3;floatx
=18.5,y=4.5;printf("%f\n",(float)(a*b)/2);printf("%d\n",(int)x%(int)y);return
0;)
A、18.0000002
B、182
C、182.000000
D、18.0000002.000000
參考答案:A
9、設有語句“inta=3;",執行語句"a+=a-=a*a;"后,變量a的值是
A、-12
B、3
C、0
D、9
參考答案:A
10、在C語言中,要求操作數必須是整型的運算符是
A、%
B、/
C、*
D、+
E、-
參考答案:A
11、程序運行后的輸出結果是#include<stdio.h>intmain(){chara='a';
printf("%c,",++a);printf("%c\n",a++);return0;}
A、b,b
B、b,c
C、a,b
D、a,c
參考答案:A
12、下面哪條語句可以生成0-9之間的隨機數
A、magic=rand()%10;
B、magic=rand()%10+1;
C、magic=rand()/10;
D、magic=rand()/10+1;
參考答案:A
13、在下面的C語言語句中,存在錯誤的是
A>inta=b=10;
B,inta=10,b=10;
C>inta,b;a=b=10;
D、inta,b;a=10;b=10;
參考答案:A
14、若以下選項中的變量已正確定義,則正確的賦值語句是
A、x3=x2=x1=0;
B、x1=26.8%3;
C、1+2=x2;
D、x4=1+2=3;
參考答案:A
15、若有以下定義,則表達式“a*b+d-c”的值的類型為#include<stdio.h>int
main(){chara;intb;floatc;doubled;....return0;}
A、double
B>int
C、float
D、char
參考答案:A
16、在C程序中如果要使用數學函數,如sin(x),log(x)等,需要在程序中加入的語
句是
A、include<math.h>
B、#include<stdio.h>
C、#define<math.h>
D、#define<stdio.h>
參考答案:A
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;
參考答案:ABC
18、在C語言中對下面的語句而言,哪個說法是錯誤的?inta,b;
A、變量a和b中的值都是0
B、變量a和b中都沒有數值
C、變量a和b中的值都是未知的隨機數
D、a和b都是整型變量
E、變量a和b占用的內存空間的大小是相同的
參考答案:AB
19>已知inta,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
參考答案:A
20、設有以下定義,則下面給出的語句中錯誤的是inta=0;floatb=1.25;charc=7V;
#defined2
A、d++;
B、(a+b)++;
C、(-a)++;
D、(a+1)++;
E、a++;
F、b++;
G、C++;
參考答案:ABCD
練兵區一一單選題—不計入總分
1、設有語句“inta=3;",執行語句"a+=a-=a*a7后,變量a的值是
A、-12
B、3
C、0
D、9
參考答案:A
2、在C程序中如果要使用數學函數,如sin(x),log(x)等,需要在程序中加入的語
句是
A、#include<math.h>
B、#include<stdio.h>
C、#define<math.h>
D、#define<stdio.h>
參考答案:A
3、設有以下定義,則下面給出的語句中錯誤的是inta=0;floatb=1.25;charc=7V;
#defined2
A^d++;
B、(a+b)++;
C、(-a)++;
D、(a+1)++;
E、a++;
F、b++;
G、C++;
參考答案:ABCD
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
5、以下程序的輸出結果是:#include<stdio.h>intmain(){inta=1,b=2;a=a+b;
b=a-b;a=a-b;printf("%d,%d\n",a,b);return0;}
A、2,1
B、3,1
C、3,2
D、1,2
參考答案:A
6、下面哪條語句可以生成0-9之間的隨機數
A、magic=rand()%10;
B、magic=rand()%10+1;
C、magic=rand()/10;
D、magic=rand()/10+1;
參考答案:A
7、在下面的C語言語句中,存在錯誤的是
A>inta=b=10;
B、inta=10,b=10;
C、inta,b;a=b=10;
D>inta,b;a=10;b=10;
參考答案:A
8、若有以下定義,則表達式"a*b+d-8的值的類型為include<stdio.h>int
main(){chara;intb;floatc;doubled;....return0;}
A、double
B、int
C、float
D、char
參考答案:A
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;
參考答案:ABC
10、在C語言中對下面的語句而言,哪個說法是錯誤的?inta,b;
A、變量a和b中的值都是0
B、變量a和b中都沒有數值
C、變量a和b中的值都是未知的隨機數
D、a和b都是整型變量
E、變量a和b占用的內存空間的大小是相同的
參考答案:AB
11、下列程序的輸出結果是#include<stdio.h>intmain(){inta=7,b=5;
printf("%d\n",b/a);return0;}
A、0
B、5
C、1
D、0.7
參考答案:A
12、程序運行后的輸出結果是#include<stdio.h>intmain(){intm=3,n=4,x;x=m++;
++n;x=x+8/n;printf("%d,%d\n",x,m);return0;}
A、4,4
B、4,3
C、5,4
D、5,3
參考答案:A
13、下面程序的運行結果是#include<stdio.h>intmain(){inta=2,b=3;floatx=
3.5,y=2.5;printf("%f",(float)(a+b)/2+(int)x%(int)y);return0;}
A、3.500000
B、3.000000
C、3.5
D、3
參考答案:A
14、以下非法的賦值語句是
A、++(i+1);
B、x=(H;
C、n=++i;
D、j++;
參考答案:A
15、己知inta,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
參考答案:A
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
參考答案:A
17、以下程序的運行結果是#include<stdio.h>intmain(){inta=12,b=3;floatx
=18.5,y=4.5;printf("%f\n",(float)(a*b)/2);printf("%d\n",(int)x%(int)y);return
0;)
A、18.0000002
B、182
C、182.000000
D、18.0000002.000000
參考答案:A
18、在C語言中,要求操作數必須是整型的運算符是
A、%
B、/
C、*
D、+
E、-
參考答案:A
19、程序運行后的輸出結果是#include<stdio.h>intmain(){chara='a';
printf("%c,",++a);printf("%c\n",a++);return0;}
A、b,b
B、b,c
C、a,b
D、a,c
參考答案:A
20、若以下選項中的變量已正確定義,則正確的賦值語句是
A、x3=x2=x1=0;
B、x1=26.8%3;
C、1+2=x2;
D、x4=1+2=3;
參考答案:A
練兵區一一編程題—不計入總分
1、輸出逆序數
參考答案:暫無答案
2、計算總分和平均分
參考答案:暫無答案
3、存款利率計算器V1.0
參考答案:暫無答案
4、數位拆分v1.0
參考答案:暫無答案
5、求正/負余數
參考答案:暫無答案
6、身高預測
參考答案:暫無答案
7、求一元二次方程的根
參考答案:暫無答案
第3章一一從鍵盤中來,到鍵盤中去,開始輸入和輸出啦
3.1數據的格式化屏幕輸出(15分鐘)隨堂測驗
1、在調用printf函數輸出數據時,當數據的實際位寬大于printf函數中的指定位寬
時,將按照數據的實際位寬輸出數據。
參考答案:正確
3.3單個字符的輸入輸出(15分半)隨堂測驗
1、單個字符既可以以c格式符也可以以d格式符輸出,前者是輸出這個字符,后
者是輸出這個字符的ASCII碼值。
參考答案:正確
3.5進階:用%c輸入數據存在的問題(含錯誤案例分析)(10分)隨堂測驗
1、用c格式符輸入字符型數據的時候,為了避免將輸入緩沖區中的空白字符(空
格、回車換行符、Tab鍵)作為有效字符讀入,可以在%c前面加一個空格。
參考答案:正確
第3章測驗
1、分析下列程序,寫出程序運行結果#includevstdio.h>intmain。{charc1='a',
c2='b',c3='c';printf("a%cb%cc%cabc\n",c1,c2,c3);return0;}
A、aabbccabc
B、acbcabc
C、aabcabc
D、acbbcabc
參考答案:A
2、有如下語句,為使變量a的值為1,b的值為2,從鍵盤輸入數據的正確形式是
scanf("a=%d,b=%d",&a,&b);
A、a=1,b=2
B、12
C、1,2
D、3=1b=2
參考答案:A
3、#include<stdio.h>intmain(){inta,b,c,d;scanf("%c%c%d,%d",&a,&b,&c,&d);
printf("%c,%c,%c,%c\n",a,b,c,d);return0;}若運行以上程序時從鍵盤上輸入:
6565,66〈回車〉。則輸出結果是
A、6,5,A,B
B、6,5,65,66
C、6,5,6,5
D、6,5,6,6
參考答案:A
4、給出程序的運行結果,程序運行時從鍵盤輸入:54321〈回車〉#includevstdio.h>
intmain(){inta,b,s;scanf("%2d%2d",&a,&b);s=a/b;printf("s=%d",s);return0;}
A、1
B、1.6875
C、2
D、0
參考答案:A
5、以下程序的輸出結果為#include<stdio.h>intmain(){floata=1234.567,b=
55.32;printf("a=%4.2f,b=%5.1f\n",a,b);return0;}
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
6、以下程序的輸出結果為#include<stdio.h>intmain(){inta=2,c=5;printf("a
=%%d,b=%%d\n",a,c);return0;}
A、a=%d,b=%d
B,a=%2,b=%5
C、a=2,b=5
D、a=%%d,b=%%d
參考答案:A
7、有以下程序,運行時若輸入為B,則輸出是include<stdio.h>intmain(){char
ch;ch=getchar();ch=ch+32;printf("%c",ch);return0;}
A、b
B、98
C、32
D、66
參考答案:A
8、在調用printf函數輸出數據時,當數據的實際位寬小于printf函數中的指定位寬
時,下面敘述正確的是
A、如果格式字符前面沒有負號,那么輸出的數據將會右對齊、左補空格;如果
格式字符前面有負號,那么輸出的數據將會左對齊、右補空格。
B、如果格式字符前面沒有負號,那么輸出的數據將會左對齊、右補空格;如果
格式字符前面有負號,那么輸出的數據將會右對齊、左補空格。
C、如果格式字符前面沒有負號,那么輸出的數據將會右對齊、左補0;如果格
式字符前面有負號,那么輸出的數據將會左對齊、右補0。
D、如果格式字符前面沒有負號,那么輸出的數據將會左對齊、右補0;如果格
式字符前面有負號,那么輸出的數據將會右對齊、左補0。
參考答案:A
9、設有語句“charc='\72';",則變量c
A、包含1個字符
B、包含2個字符
C、包含3個字符
D、不合法
參考答案:A
10、在下列語句中存在錯誤的是
A、inta,b;scanf("%d%f",&a,&b);
B、inta,b;scanf("%d%d",a,b);
C、inta,b;scant("%d%d\n",&a,&b);printf("%d%d",a,b);
D、floata,b;scanf("%3.2f%4.2f",&a,&b);printf("%f%f",a,b);
E、floata,b;scanf("%f%f",&a,&b);printf("%f%f",a,b);
F、floata,b;scanf("%f%f",&a,&b);printf("a=%4.3f,b=%4.3f",a,b);
G、inta,b;scanf("%2d%2d",&a,&b);printf("a=%d,b=%d",a,b);
H、inta,b;scanf("%d,%d",&a,&b);printf("a=%2d,b=%2d",a,b);
I、inta,b;scanf("a=%d,b=%d",&a,&b);printf("a=%d,b=%d",a,b);
參考答案:ABCD
11、程序運行后的輸出結果是#include<stdio.h>intmain(){inta=666,b=888;
printf("%d\n",a,b);return0;}
A、666
B、錯誤信息
C、888
D、666,888
參考答案:A
12、有以下語句段#include<stdio.h>intmain(){intn1=10,n2=20;
printf("",n1,n2);return0;}要求按以下格式輸出n1和n2的值,每個輸
出行都是從第一列開始,則空白處代碼填寫正確的是運行結果示例如下:n1=10
n2=20
A、n1=%d\nn2=%d
B、n1=%dn2=%d\n
C、n1=%d,n2=%d
D、n1=%dn2=%d\n
參考答案:A
13、以下選項中合法的字符常量是
A,'\010'
B、"B"
C、68
D、D
參考答案:A
14、寫出下面程序的輸出結果#includevstdio.h>intmain(){intx=6,y,z;x*=18+1;
printf("%d,",x-);x+=y=z=11;printf("%d",x);return0;}
A、114,124
B、113,124
C、109,116
D、110,116
參考答案:A
15、給出程序的運行結果,程序運行時從鍵盤輸入:45-12〈回車,#include<stdio.h>
intmain(){inta,b,sum;scanf("%d%*c%d",&a,&b);sum=a+b;
printf("sum=%d",sum);return0;}
A、57
B、輸出報錯
C、33
D、輸出一個隨機數
參考答案:A
16、給出程序的運行結果#include<stdio.h>intmain(){inta,b,s;charop;
scanf("%d%c%d",&a,&op,&b);s=a%b;printf("s=%d",s);return0;}程序運行時從
鍵盤輸入:15〈回車>%5V回車,
A、0
B、程序報錯
C、輸出一個隨機數
D、3
參考答案:A
17、給出程序的運行結果#include<stdio.h>intmain(){inta,b,c,d;char
op1,op2,op3;intsum;printf("pleaseinput:a+b+c+d\n");
scanf("%d%c%d%c%d%c%d",&a,&op1,&b,&op2,&c,&op3,&d);sum=a+b+c+d;
printf("sum=%d",sum);return0;}程序運行時從鍵盤輸工1(回車>2+3+1<回車〉
A、7
B、1
C、3
D、6
參考答案:A
18、在C語言中,字符型數據在內存中以()形式存放
A、ASCII碼
B、國標碼
C、BCD碼
D、反碼
參考答案:A
19、以下程序的執行結果是#include<stdio.h>intmain(){inta=5,b=4,x,y;x
=2*a++;y=-b*2;printf("a=%d,x=%d\n",a,x);printf("b=%d,y=%d\n",b,y);
return0;}
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
20、以下程序運行后的輸出結果是include<stdio.h>intmain(){inta;intc=10;
floatf=100.0;doublex;a=f/=c*=(x=6.5);printf("%d,%d,%3.1f,%3.1f\n",a,c,f,x);
return0;}
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
參考答案:A
21、給出程序的運行結果#include<stdio.h>intmain(){chara,b;ints;
printf("pleaseinputaandb:\n");a=getchar();b=getchar();s=a+b;
printf("a=%c,b=%c",a,b);return0;}程序運行時從鍵盤輸入:1〈空格>2<回車>
A、a=1,b=
B、a=1,b=2
C、a=,b=2
D、輸出亂碼
參考答案:A
22、以下程序的輸出結果是#include<stdio.h>intmain(){inta=1234;
printf("%2d\n",a);return0;}
A、1234
B、12
C、34
D、提示出錯、無結果
參考答案:A
練兵區一一單選題——不計入總分
1、以下程序的輸出結果為#include<stdio.h>intmain(){floata=1234.567,b=
55.32;printf("a=%4.2f,b=%5.1f\n",a,b);return0;}
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
2、以下選項中合法的字符常量是
A.'\010'
B,"B"
C、68
D、D
參考答案:A
3、給出程序的運行結果程序運行時從鍵盤輸入:1〈空格>2〈回車〉#include
<stdio.h>intmain(){chara,b;ints;printf("pleaseinputaandb:\n");a=getchar();
b=getchar();s=a+b;printf("a=%c,b=%c",a,b);return0;}
A、a=1,b=
B、a=1,b=2
C、a=,b=2
D、輸出亂碼
參考答案:A
4、有如下語句,為使變量a的值為1,b的值為2,從鍵盤輸入數據的正確形式是
scanf("a=%d,b=%d",&a,&b)
A^a=1,b=2
B、12
C、1,2
D、a=1b=2
參考答案:A
5、#include<stdio.h>intmain(){inta,b,c,d;scanf("%c%c%d,%d",&a,&b,&c,&d);
printf("%c,%c,%c,%c\n",a,b,c,cl);return0;}若運行以上程序時從鍵盤上輸入:
6565,66(回車>。則輸出結果是
A、6,5,A,B
B、6,5,65,66
C、6,5,6,5
D、6,5,6,6
參考答案:A
6、給出程序的運行結果,程序運行時從鍵盤輸入:54321〈回車〉#include<stdio.h>
intmain(){inta,b,s;scant("%2d%2d",&a,&b);s=a/b;printf("s=%d",s);return0;}
A、1
B、1.6875
C、2
D、0
參考答案:A
7、在調用printf函數輸出數據時,當數據的實際位寬小于printf函數中的指定位寬
時,下面敘述正確的是
A、如果格式字符前面沒有負號,那么輸出的數據將會右對齊、左補空格;如果
格式字符前面有負號,那么輸出的數據將會左對齊、右補空格。
B、如果格式字符前面沒有負號,那么輸出的數據將會左對齊、右補空格;如果
格式字符前面有負號,那么輸出的數據將會右對齊、左補空格。
C、如果格式字符前面沒有負號,那么輸出的數據將會右對齊、左補0;如果格
式字符前面有負號,那么輸出的數據將會左對齊、右補0。
D、如果格式字符前面沒有負號,那么輸出的數據將會左對齊、右補0;如果格
式字符前面有負號,那么輸出的數據將會右對齊、左補0。
參考答案:A
8、程序運行后的輸出結果是#include<stdio.h>intmain(){inta=666,b=888;
printf("%d\n",a,b);return0;}
A、666
B、錯誤信息
C、888
D、666,888
參考答案:A
9、在C語言中,字符型數據在內存中以()形式存放
A、ASCII碼
B、國標碼
C、BCD碼
D、反碼
參考答案:A
10、以下程序運行后的輸出結果是#include<stdio.h>intmain(){inta;intc=10;
floatf=100.0;doublex;a=f/=c*=(x=6.5);printf("%d,%d,%3.1f,%3.1f\n",a,c,f,x);
return0;}
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
參考答案:A
11、以下程序的輸出結果是#include<stdio.h>intmain(){inta=1234;
printf("%2d\n",a);return0;}
A、1234
B、12
C、34
D、提示出錯、無結果
參考答案:A
12、設有語句“charc='\72';",則變量c
A、包含1個字符
B、包含2個字符
C、包含3個字符
D、不合法
參考答案:A
13、有以下語句段#include<stdio.h>intmain(){intn1=10,n2=20;
printf("",n1,n2);return0;}要求按以下格式輸出n1和n2的值,每個輸
出行都是從第一列開始,則空白處代碼填寫正確的是運行結果示例如下:n1=10
n2=20
A、n1=%d\nn2=%d
B、n1=%dn2=%d\n
C、n1=%d,n2=%d
D、n1=%dn2=%d\n
參考答案:A
14、給出程序的運行結果,程序運行時從鍵盤輸入:45-12〈回車〉#include<stdio.h>
intmain(){inta,b,sum;scanf("%d%*c%d",&a,&b);sum=a+b;
printf("sum=%d",sum);return0;}
A、57
B、輸出報錯
C、33
D、輸出一個隨機數
參考答案:A
15、給出程序的運行結果#includevstdio.h>intmain(){inta,b,s;charop;
scanf("%d%c%d",&a,&op,&b);s=a%b;printf("s=%d",s);return0;}程序運行時從
鍵盤輸入:15〈回車>%5V回車,
A、0
B、程序報錯
C、輸出一個隨機數
D、3
參考答案:A
16、分析下列程序,寫出程序運行結果#includevstdio.h>intmain。{charc1='a',
c2='b',c3='c';printf("a%cb%cc%cabc\n",c1,c2,c3);return0;}
A、aabbccabc
B、acbcabc
C、aabcabc
D、acbbcabc
參考答案:A
17>以下程序的輸出結果為#include<stdio.h>intmain(){inta=2,c=5;printf("a
=%%d,b=%%d\n",a,c);return0;}
A、a=%d,b=%d
B、a=%2,b=%5
C、a=2,b=5
D、a=%%d,b=%%d
參考答案:A
18、有以下程序,運行時若輸入為B,則輸出是#includevstdio.h>intmain。{char
ch;ch=getchar();ch=ch+32;printf("%c",ch);return0;}
A、b
B、98
C、32
D、66
參考答案:A
19、在下列語句中存在錯誤的是
A、inta,b;scanf("%d%f",&a,&b);
B、inta,b;scanf("%d%d",a,b);
C、inta,b;scant("%d%d\n",&a,&b);printf("%d%d",a,b);
D、floata.b;scanf("%3.2f%4.2f",&a,&b);printf("%f%f",a,b);
E、floata,b;scanf("%f%f",&a,&b);printf("%f%f",a,b);
F、floata.b;scanf("%f%f",&a,&b);printf("a=%4.3f,b=%4.3f",a,b);
G、inta,b;scanf("%2d%2d",&a,&b);printf("a=%d,b=%d",a!b);
H、inta.b;scanf("%d,%d",&a,&b);printf("a=%2d,b=%2d",a,b);
I、inta,b;scanf("a=%d,b=%d",&a,&b);printf("a=%d,b=%d",a,b);
參考答案:ABCD
20、寫出下面程序的輸出結果#include<stdio.h>intmain(){intx=6,y,z;x*=18+1;
printf("%d,",x-);x+=y=z=11;printf("%d",x);return0;}
A、114,124
B、113,124
C、109,116
D、110,116
參考答案:A
21、給出程序的運行結果#include<stdio.h>intmain(){inta,b,c,d;char
op1,op2,op3;intsum;printf("pleaseinput:a+b+c+d\n");
scanf("%d%c%d%c%d%c%d",&a,&op1,&b,&op2,&c,&op3,&d);sum=a+b+c+d;
printf("sum=%d",sum);return0;}程序運行時從鍵盤輸工1〈回車>2+3+1〈回車>
A、7
B、1
C、3
D、6
參考答案:A
22>以下程序的執行結果是#include<stdio.h>intmain(){inta=5,b=4,x,y;x=
2*a++;y=-b*2;printf("a=%d,x=%d\n",a,x);printf("b=%d,y=%d\n",b,y);
return0;}
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
第3章編程題在線測試
1、學分績計算
參考答案:暫無答案
2、一尺之捶,日取其半
參考答案:暫無答案
3、網購打折商品V1.0
參考答案:暫無答案
4、計算時間差V1.0
參考答案:暫無答案
練兵區——編程題——不計入總分
1、日期顯示
參考答案:暫無答案
2、產品信息格式化
參考答案:暫無答案
3、計算兩個數的平方和
參考答案:暫無答案
4、逆序數的拆分計算
參考答案:暫無答案
5、拆分英文名
參考答案:暫無答案
6、計算體指數
參考答案:暫無答案
第4章一一無處不在的抉擇
4.1關系運算符和邏輯運算符(23分鐘)隨堂測驗
1、下面判斷ch是大寫或者小寫英文字母的表達式是否正確?ch>='A'&&ch<=
'Z'||ch>='a'&&ch<='z'
參考答案:正確
4.2條件語句(14分鐘)隨堂測驗
1、下列關于if-else語句的說法中哪個是正確的。
A、else總是和離它最近的if配對
B、else總是和前面離它最近的且還未和其他else匹配的在同一語句塊內同一
層次的if配對
C、else總是和前面離它最近的且位于花括號內的if配對
D、else可以和它前面的尚未與其他else匹配的任何一個if配對
參考答案:B
2、條件運算符是C語言中唯一的一個三元運算符.
參考答案:正確
4.4進階:數值溢出和精度損失問題(34分半)隨堂測驗
1、在賦值操作中,當賦值表達式左側的變量的類型與右側的表達式的類型不一致
的時候,下面說法正確的是()0
A、在賦值操作中,當賦值運算符左側的變量的類型與右側的表達式的類型不一
致的時候,會發生自動類型轉換,賦值表達式的結果類型是賦值運算符左側變量的
類型。
在賦值操作中,當賦值運算符左側的變量的類型與右側的表達式的類型不一
致的時候,賦值表達式的結果類型是賦值運算符右側表達式的類型。
C、在賦值操作中,只要賦值運算符左側的變量的類型與右側的表達式的類型不
一致,就會發生數值溢出。
D、在賦值操作中,當賦值運算符左側的變量的類型與右側的表達式的類型不一
致的時候,要么發生數值溢出,要么發生數值精度的損失。
參考答案:A
4.4進階:數值溢出和精度損失問題(34分半)隨堂測驗
1、下列說法錯誤的是()o
A、浮點數并非真正意義上的實數,只是其在某種范圍內的近似。
B、浮點數能精確表示的數字位數取決于這種類型的浮點數的有效數字位數。
C、使用更多的位來存儲階碼,將會擴大浮點數的表數精度。
D、受浮點數表數精度的限制,因此對于浮點數不能直接比較其是否相等,應該
比較其是否近似相等。
參考答案:C
4.5進階:軟件測試與錯誤實例分析(20分半)隨堂測驗
1、下列說法錯誤的是()o
A、軟件測試的目的就是證明程序的正確性,即給定特定的輸入,通過運行被測
程序,檢查程序的輸出是否與預期結果一致,進而驗證程序的正確性。
B、白盒測試就是在完全了解程序的結構和處理過程的情況下,按照程序內部的
邏輯測試程序,檢驗程序中的每條邏輯路徑是否都能按預定要求正確工作。黑盒測
試就是把系統看成一個黑盒子,不考慮程序內部的邏輯結構和處理過程,只根據需
求規格說明書的要求,設計測試用例,檢查程序的功能是否符合它的功能說明。
C、在選擇測試用例時,不僅要選取合理的輸入數據,還要選取一些不合理的輸
入數據,以及某些極端的邊界點或臨界點等,對程序進行測試
D、由于修復了舊的bug的同時,往往又會產生新的bug,因此往往還需要對所
有出現過的bug重新測試一遍,看其是否會重新出現,并給確認代碼修改后沒有
引入新的bug,即修改代碼后需要進行回歸測試。
參考答案:A
第4章測驗
1、程序代碼如下:include<stdio.h>intmain(){inta,b;printf("pleaseinputaand
b:\n");scant("%d%d",&a,&b);printf("theoutputdatais%d\n",a<b?b:a);return0;}
從鍵盤輸入以下數據:2〈回車>7〈回車,則程序輸出為
A、theoutputdatais7
B、theoutputdatais2
C、theoutputdatais1
D、theoutputdatais0
參考答案:A
2、以下程序運行后的輸出結果是#include<stdio.h>intmain(){inta,b,c;a=10;
b=20;c=(a%b<1)||(a/b>1);printf("%d,%d,%d",a%b,a/b,c);return0;}
A、10,0,0
B、10,1,0
C、10,0,1
D、10,1,1
參考答案:A
3、從鍵盤輸入三角形的三邊長為a,b,c,按下面公式計算并輸出三角形的面
s=—(a+b+c),area=-Js(s—a)(s——c)
積。27程序代
碼如下,但程序運行后輸出結果不正確,請找出有問題的語句。include<stdio.h>
#include<math.h>intmain(){floata,b,c;floats,area;printf("lnputa,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=%.2f\n",area);}else{printf("lt
isnotatriangle\n");}return0;}
A、第第行: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);
參考答案:A
4、編程設計一個簡單的計算器程序,要求用戶從鍵盤輸入如下形式的表達式:操
作數1運算符op操作數2然后,計算并輸出表達式的值指定的運算符為:力□(+)
減(-)乘(*)除(/)代碼如下,所給程序是否存在錯誤,若有,找出錯誤所
在并改正。#include<stdio.h>intmain(){floatdatal,data2;charop;
printf("Pleaseentertheexpression:");scanf("%f%c%f",&data1,&op,&data2);
/*%c前有一個空格*/switch(op){caseprintf("%f+%f=%f\n",datal,data2,
datal+data2);break;caseprintf("%f-%f=%f\n",datal,data2,datal-data2);
break;caseprintf("%f*%f=%f\n",datal,data2,datal*data2);break;case7':
printf("%f/%f=%f\n",datal,data2,datal/data2);break;default:printf("lnvalid
operator!\n");}return0;}
A、第20行語句有錯誤,改成:if(fabs(data2)v=EPS)printf("Divisionbyzero!\n");
elseprintf("%f/%f=%f\n",datal,data2,datal/data2);同時,第1行語句下方應
加入include<math.h>#defineEPS1e-6
B、default分支缺少break語句
C、沒有錯誤
D、第20行語句有錯誤,改成:if(data2=0)printf("Divisionbyzero!\n");else
printf("%f/%f=%f\n",datal,data2,datal/data2);
參考答案:A
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
參考答案:A
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
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 探秘古詩詞之美
- 四級英語全攻略
- 山西工程技術學院《機械工程英語》2023-2024學年第二學期期末試卷
- 天津音樂學院《汽車理論A》2023-2024學年第二學期期末試卷
- 南京旅游職業學院《游泳實踐教學》2023-2024學年第二學期期末試卷
- 遼寧省大連市普蘭店市第六中學2024-2025學年高三下第一次測試語文試題含解析
- 江西省豐城市第九中學2025屆初三下學期3月第二次月考生物試題含解析
- 山東省臨沂市蘭山區2025屆小學六年級數學畢業檢測指導卷含解析
- 南華縣2025屆數學四下期末監測模擬試題含解析
- 上海財經大學浙江學院《藥用輔料學》2023-2024學年第二學期期末試卷
- 2019阿那亞金山嶺中心小鎮生活手冊
- 預應力張拉記錄四張表
- 豐田通商簡介r
- 六氟丙烯安全技術說明書MSDS
- 首信紅星國際廣場A地塊建設項目監理規劃
- 人體穴位與天體對應解密
- 機械行業六個典型事故案例分享
- run@rate表格實例
- 常減壓蒸餾裝置操作工操作技能試題(終).
- 《云南省建筑工程資料管理規程應用指南)(上下冊)
- 控機床故障診斷與維修幾例
評論
0/150
提交評論