程序設計基礎C語言入門篇(山東理工大學)知到智慧樹章節答案_第1頁
程序設計基礎C語言入門篇(山東理工大學)知到智慧樹章節答案_第2頁
程序設計基礎C語言入門篇(山東理工大學)知到智慧樹章節答案_第3頁
程序設計基礎C語言入門篇(山東理工大學)知到智慧樹章節答案_第4頁
程序設計基礎C語言入門篇(山東理工大學)知到智慧樹章節答案_第5頁
已閱讀5頁,還剩19頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

目錄第一章單元測試第二章單元測試第三章單元測試第四章單元測試第五章單元測試第六章單元測試第七章單元測試第八章單元測試第九章單元測試第十章單元測試第一章單元測試1【單選題】(10分)正確答案:C下列哪一個不是C語言的的主要特點()。A.數據類型豐富B.運算符豐富C.能完成任何功能D.語言簡潔、緊湊、方便、靈活2【單選題】(10分)正確答案:B一個C語言程序總是從()函數開始。A.printfB.mainC.maxD.scanf3【單選題】(10分)正確答案:C計算機高級語言程序的運行方法有編譯執行和解釋執行兩種,下列敘述中正確的是()。A.C語言程序既可以編譯執行又可以解釋執行B.C語言程序僅可以解釋執行C.C語言程序僅可以編譯執行4【單選題】(10分)正確答案:A下列敘述中正確的是()。A.每個C語句必須以分號結束B.C語句必須在一行內寫完C.C語言程序中每一行只能寫一條語句D.C語言程序的只有一個函數5【判斷題】(10分)正確答案:B程序是一組計算機能識別和執行的指令集合。A.錯B.對6【判斷題】(10分)正確答案:A計算機語言是一種只有計算機才能識別的語言。A.錯B.對7【判斷題】(10分)正確答案:A一個C語言程序是由一個或多個函數組成的,其中必須包含一個函數,函數名是main。A.對B.錯8【單選題】(10分)正確答案:DC語句是以()表示結束A.句號B.回車C.逗號D.分號9【判斷題】(10分)正確答案:BC語言區分大小寫。A.錯B.對10【判斷題】(10分)正確答案:BC語言只有一個標準。A.錯B.對第二章單元測試1【單選題】(10分)正確答案:A算法的特點不包括()。A.多個輸入B.有窮性C.確定性D.可行性2【單選題】(10分)正確答案:D算法的有窮性是指()。A.算法的程序運行時間是有限的B.算法的程序所處理的數據量是有限的C.算法只能被有限的用戶使用D.算法包含的操作步驟是有限的3【單選題】(10分)正確答案:C在計算機中,算法是指()。A.查詢方法B.加工方法C.解答方案的準確而完整的描述D.排序方法4【判斷題】(10分)正確答案:B算法的特點包括窮性、確定性、可行性、有一個或多個輸入和有一個或多個輸出。A.對B.錯5【判斷題】(10分)正確答案:B在程序設計中,符合結構化原則的三種基本控制結構是順序結構、選擇結構、循環結構。A.錯B.對6【判斷題】(10分)正確答案:B傳統的流程圖只有一個入口,多個出口。A.對B.錯7【判斷題】(10分)正確答案:B所謂算法的有窮性是指算法要在合理有限的時間內結束。A.錯B.對8【判斷題】(10分)正確答案:B算法是程序的具體實現。A.對B.錯9【判斷題】(10分)正確答案:A算法分為數值算法和非數值算法兩大類。A.對B.錯10【判斷題】(10分)正確答案:B算法是為解決一個問題而采取的方法和步驟,是程序的靈魂。A.錯B.對第三章單元測試1【判斷題】(10分)正確答案:B表達式25/3%3的值為2.A.錯B.對2【判斷題】(10分)正確答案:A若有定義:inty=2;則計算表達式y+=y后的y值是2()A.錯B.對3【單選題】(10分)正確答案:D下列不正確的敘述是()。A.若a和b類型相同,在計算了賦值表達式a=b后b中的值將復制到a中,而b中的值不變。B.在C語言程序中,SUM和sum是兩個不同的變量。C.在C語言程序中,進行賦值運算時,先將右側表達式的值轉化左側變量的類型再賦給變量。D.在C語言程序中,%運算符的優先級高于/運算符。4【單選題】(10分)正確答案:D在C語言中,要求運算對象必須是整型的運算符是()。A.*B.-C./D.%5【單選題】(10分)正確答案:C下列選項中正確的定義語句是()。A.double,a,b;B.doublea=b=7;C.doublea=7,b=7;D.doublea;b;6【單選題】(10分)正確答案:C輸入一個3位正整數n,分別輸出n的個位a、十位b、百位c。下面程序的語句填空應為:()#include<stdio.h>intmain(){intn,a,b,c;scanf("%d",&n);a=____;;b=n/10%10;c=n/100;printf("a=%db=%dc=%d",a,b,c);return0;}A.n/10B.a%10C.n%10D.b/107【單選題】(10分)正確答案:B有下列程序,程序運行后的輸出結果是()。#include<stdio.h>intmain(){inta=1,b=0;printf("%d,",b=a+b);printf("%d\n",a=2*b);return0;}A.0,0B.1,2C.1,0D.3,28【判斷題】(10分)正確答案:B數據在計算機中是以二進制的形式存儲的。()A.錯B.對9【判斷題】(10分)正確答案:B變量定義后,如果沒有賦值,那變量多表示的存儲單元是空的。A.對B.錯10【判斷題】(10分)正確答案:A定義符號常量的名字用命令#define。A.對B.錯第四章單元測試1【單選題】(10分)正確答案:C有下列程序,已知字母A的ASCII碼為65,程序運行后的輸出結果是()。#include<stdio.h>intmain(){charc1,c2;c1=’A’+’8’-’4’;c2=’A’+’8’-’5’;printf("%c,%d\n",c1,c2);return0;}A.輸出無定值B.D,69C.E,68D.E,D2【單選題】(10分)正確答案:A有下列程序,程序運行后的輸出結果是()。#include<stdio.h>intmain(){inta=14,b=12;a=a+b;b=a-b;a=a-b;printf("a=%d,b=%d",a,b);return0;}A.a=12,b=14B.a=14,b=14C.a=26,b=26D.a=14,b=123【單選題】(10分)正確答案:D若變量已正確定義為int型,要給a、b、c輸入數據,正確的輸入語句是()。A.scanf("%d%d%d",a,b,c);B.scanf("%D%D%D",&a,&b,&c);C.read(a,b,c)D.scanf("%d%d%d",&a,&b,&c);4【判斷題】(10分)正確答案:B編寫程序,輸入3個整數a、b、c,輸出時:a的值是b,b的值是c,c的值是a。下面程序可以正確實現題目要求:#include<stdio.h>intmain(){inta,b,c,tscanf("%d%d%d",&a,&b,&c);t=a;a=b;b=c;c=t;//順序交換a、b、cprintf("a=%d,b=%d,c=%d",a,b,c);return0;}A.錯B.對5【判斷題】(10分)正確答案:B已知銀行一年定期存款利率r是2.25%,若存款本金是c元,編程計算一年期滿是本金之和d(保留兩位小數)。下面程序可以正確實現題目要求:#include<stdio.h>intmain(){doubler=0.0255,c,d;scanf("%f",&c);d=c+c*r;printf("x=%.2lf",d);return0;}A.對B.錯6【判斷題】(10分)正確答案:A用getchar()從鍵盤上輸入一個字符,用putchar()打印出來!參考程序1與參考程序2都可以實現題目要求。#include<stdio.h>intmain(){chara;a=getchar();putchar(a);return0;}參考程序2:#include<stdio.h>intmain(){charch;scanf(“%c”,&ch);printf(“%c\n”,ch);return0;}A.對B.錯7【單選題】(10分)正確答案:C下列程序運行結果為:#include<stdio.h>intmain(){chara,b,c;a='r';b='e';c='d';putchar(a);putchar(b);putchar(c);putchar('\n');return0;A.‘r’’e’’d’B.‘r’’e’’d’’\n’C.redD.red\n8【單選題】(10分)正確答案:A如果要求按照12:31:12格式輸入數據,那么下面哪個輸入語句是正確的:()A.scanf("%d:%d:%d",&num1,&num2,&num3);B.scanf("%d,%d,%d",&num1,&num2,&num3);C.scanf("%d%d%d",&num1,&num2,&num3);9【判斷題】(10分)正確答案:A在格式化輸入scanf函數中,如何%后面跟有*,表示抑制符,輸入的數據不會賦值給相應的變量。()A.對B.錯10【判斷題】(10分)正確答案:Bputchar()函數屬于無參函數。()A.對B.錯第五章單元測試1【判斷題】(10分)正確答案:A在C語言中,邏輯運算符“&&”比“||”的優先級高()。A.對B.錯2【判斷題】(10分)正確答案:A將數學式:a=b或a<c,寫為C語言的表達式為a=b||a<c()。A.錯B.對3【單選題】(10分)正確答案:A已知字母’A’的ASCll碼值為65,若變量c為char型,下列不能正確判斷出c為大寫字母的表達式是()。A.!(c>=’A’||c<=’Z’)B.c>=’A’&&c<=’Z’C.(c>=65)&&(c<=91)D.(c+32)>=’a’&&(c+32)<=’z’4【單選題】(10分)正確答案:B有下列程序,程序運行后的輸出結果是()。#include<stdio.h>intmain(){intx=1,y=0;if(!x)y++;elseif(x==0)if(x)y+=2;elsey+=3;printf("%d",y);return0;}A.1B.0C.2D.35【單選題】(10分)正確答案:B有下列程序,程序運行后的輸出結果是()。inta=3,b;if(a>0)b=1;elseb=-1;b++;printf("%d",b);A.0B.2C.-1D.16【單選題】(10分)正確答案:B有下列程序,程序運行后的輸出結果是()。#include<stdio.h>intmain(){intx=0,y=2,z=3;switch(x){case0:switch(y==2){case1:printf("*");break;case2:printf("%");break;}case1:switch(z){case1:printf("$");case2:printf("*");break;default:printf("#");}}}A.*$B.*#C.*%D.**7【判斷題】(10分)正確答案:BC語言中條件表達式結果為0表示假,為1表示真。A.對B.錯8【判斷題】(10分)正確答案:B除了最后一個分支,switch語句要求每一個分支后加上一個break語句。A.錯B.對9【判斷題】(10分)正確答案:AC可保證復雜的邏輯表達式是從左至右計算的。A.對B.錯10【單選題】(10分)正確答案:D有下列程序,程序運行后的輸出結果是()。inta=3,b=5,c=7;if(a>b)a=b;c=a;if(c!=a)c=b;printf("%d,%d,%d\n",a,b,c);A.3,5,5B.程序段有語法錯C.3,5,7D.3,5,3第六章單元測試1【判斷題】(10分)正確答案:B有下列程序段,程序段運行后的輸出結果##2##3##4##5()。intk;for(k=2;k<6;k++,k++)printf("##%d",k);A.對B.錯2【判斷題】(10分)正確答案:B在循環結構中break是終止循環,跳出循環體。A.錯B.對3【單選題】(10分)正確答案:D以下不構成無限循環的語句組是()。A.intn=10;while(n);n--;B.intn=0;while(1)n++;;background:yellow;background:yellowC.intn=0,i;for(n=0,i=1;;i++)n+=i;D.intn=0do{++n;}while(n<=0);4【單選題】(10分)正確答案:C在C語言中有關for循環,下列正確的說法是()。A.for循環是先執行循環體語句,后判斷表達式。B.在for循環中,不能用break跳出循環體。C.for循環的循環體語句中,可以包含多條語句,但必須用花括號寫成復合語句。D.for循環只能用于循環次數已經確定的情況。5【單選題】(10分)正確答案:C有下列程序,程序運行后的輸出結果是()。#include<stdio.h>intmain(){inti,sum;for(i=1;i<6;i++)sum+=sum;printf("%d",sum);return0;}A.15B.14C.不確定D.06【單選題】(10分)正確答案:D有下列程序,程序運行后的輸出結果是()。#include<stdio.h>intmain(){inti,j,a=0;for(i=0;i<2;i++){for(j=0;j<4;j++){if(j%2)break;a++;}a++;}printf("%d",a);return0;}A.5B.6C.7D.47【判斷題】(10分)正確答案:Awhile與do-while在任何時候都可以互換。A.錯B.對8【判斷題】(10分)正確答案:B下面程序可以正確求出1+2+3+。。。+n的和。()#include<stdio.h>intmain(){inti=1,sum=0,n;scanf(“%d”,&n);while(i<=n)sum=sum+i;++i;printf("sum=%d",sum);return0;}A.對B.錯9【單選題】(10分)正確答案:C以下程序中的變量已正確定義,程序段的輸出結果是()。for(i=0;i<4;i++,i++)for(k=1;k<3;k++);printf("*");A.****B.********C.*D.**10【單選題】(10分)正確答案:C有下列程序,程序運行后的輸出結果是()。#include<stdio.h>intmain(){inti,j;for(i=3;i>=1;i--){for(j=1;j<=2;j++)printf("%d",i+j);printf("\n");}return0;}A.432543B.234345C.453423D.233445第七章單元測試1【判斷題】(10分)正確答案:A在C語言中,數組元素的最小下標是1。A.對B.錯2【判斷題】(10分)正確答案:A在C語言中,數組名代表首地址。A.對B.錯3【判斷題】(10分)正確答案:A在C語言中,數組一般針對批量數據的處理,這些數據必須具有相同的類型()。A.對B.錯4【判斷題】(10分)正確答案:B假設有一定義語句inta[][3]={1,2,3,4,5,6};那么數組的行數是不確定的。A.對B.錯5【判斷題】(10分)正確答案:A有下列程序,程序運行后的輸出結果是0()。#include<stdio.h>intmain(){inta[5]={1,2,3};printf("%d\n",a[3]);return0;}A.對B.錯6【單選題】(10分)正確答案:C若有說明:inta[10];則對a數組元素的正確引用是()。A.a(5)B.a[3.5]C.a[10-10]D.a[10]7【單選題】(10分)正確答案:A有下列程序段,運行后的輸出結果是()。inti;intx[3][3]={1,2,3,4,5,6,7,8,9};for(i=0;i<3;i++)printf("%d",x[i][2-i]);A.147B.159C.369D.3578【單選題】(10分)正確答案:C有下列程序,運行后的輸出結果是()。#include<stdio.h>intmain(){inta[4][4]={{1,3,5},{2,4,6},{3,5,7}};printf("%d%d%d%d\n",a[0][3],a[1][2],a[2][1],a[3][0]);return0;}A.輸出值B.1470C.0650D.54309【單選題】(10分)正確答案:A有下列程序,運行后的輸出結果是()。#include<stdio.h>intmain(){ints[12]={1,2,3,4,4,3,2,1,1,1,2,3},c[5]={0},i;for(i=0;i<12;i++)c[s[i]]++;for(i=1;i<5;i++)printf("%d",c[i]);printf("\n");return0;}A.4332B.2344C.1234D.112310【單選題】(10分)正確答案:B若有定義:intb[3][4]={0};則下述正確的是()。A.不正確的定義B.數組b中各元素均為0C.沒有元素能得初值0D.b[0][0]的值是0,其他元素值未知第八章單元測試1【判斷題】(10分)正確答案:A有如下函數調用語句:fun(r1,r2+r3,(r4,r5));該函數調用語句中,含有的實參個數是3個。A.對B.錯2【判斷題】(10分)正確答案:A函數可以嵌套定義,但不能嵌套調用。A.對B.錯3【判斷題】(10分)正確答案:Amian函數可以自己調用自己。A.對B.錯4【單選題】(5分)正確答案:C以下正確的函數定義是()。A.fun(x,y){intx,y;z=x+y;retunz;}B.doublefun(intx,inty){z=x+y;returnz;}C.doublefun(intx,inty){doublez;z=x+y;returnz;}D.fun(intx,y){intz;returnintz;}5【單選題】(10分)正確答案:B在C語言函數中,下面說法正確的是()。A.一個return語句可以返回多個值。B.一個函數中可以有多個return語句,但是最多執行其中一個return語句。C.一個函數中只能有一個return語句。D.一個函數中可以有多個return語句,可能多個return語句全部執行6【單選題】(10分)正確答案:C在C語言函數中,以下說法正確的是()。A.定義函數時,形參的類型說明可以放在函數體內。B.如果形參與實參的類型不一致以實參類型為準C.如果函數值的類型與return返回值類型不一致,以函數值類型為準D.return后邊的值不能為表達式7【單選題】(10分)正確答案:C在C語言程序中,以下正確的描述是()。A.函數的定義可以嵌套,但函數的調用不可以嵌套B.函數的定義和調用均可以嵌套C.函數的定義不可嵌套,但函數的調用可以嵌套D.函數的定義和函數的調用均不可以嵌套8【單選題】(10分)正確答案:D有下列程序,程序運行后的輸出結果是()。#include<stdio.h>intf(inta){intb=0,c=3;b++;c++;return(a+b+c);}intmain(){inta=2,i;for(i=0;i<3;i++)printf("%4d",f(a));return0;}A.71013B.7911C.789D.7779【單選題】(10分)正確答案:A有下列程序,程序運行后的輸出結果是()。#include<stdio.h>intfunc(inta,intb);intmain(){intk=4,m=1,p;p=func(k,m);printf("%d",p);p=func(k,m);printf("%d\n",p);return0;}intfunc(inta,intb){intm=0,i=2;i+=m+1;m=i+a+b;return(m);}{intm=0,i=2;i+=m+1;m=i+a+b;return(m);}A.88B.820C.817D.81610【單選題】(10分)正確答案:B有下列程序,程序運行后的輸出結果是()。#include<stdio.h>intfun(intx,inty);intmain(){inta=4,b=5,c=6;printf("%d\n",fun(2*a,fun(b,c)));return0;}intfun(intx,inty){if(x!=y)return((x+y)/2);elsereturn(x);}A.12B.6C.8D.3第九章單元測試1【判斷題】(10分)正確答案:A若有下列語句:inta[4]={1,2,3,4},*p;p=&a[2];則*p的值是3A.對B.錯2【判斷題】(10分)正確答案:Aint*p;此時*是一個運算符號,表示間接訪問p所指向的變量。A.錯B.對3【判斷題】(10分)正確答案:A有下列程序段,程序段運行后的輸出結果是10()。int*p,n;n=10;p=&n;n=*p+10;printf("%d\n",*p);A.錯B.對4【單選題】(10分)正確答案:B若有說明:inta=2,*p=&a,*q=p;,則以下非法的賦值語句是()。A.*p=*qB.q=aC.p=qD.a=*q5【單選題】(10分)正確答案:B變量的指針是指該變量的()。A.值B.首地址C.名D.別名6【單選題】(10分)正確答案:B若已定義inta=5;下列對(1)、(2)兩個語句的正確解釋是()(1)int*p=&a;(2)*p=a;A.語句(1)和語句(2)語句都是把變量a的地址值賦給指針變量p。B.語句(1)是對p進行說明的同時進行初始化,使p指向a;語句(2)是將a的值賦給p指的空間。C.語句(1)和語句(2)中的*p含義相同,都表示給指針變量p賦值。D.語句(1)是對p進行說明的同時進行初始化,使p指向a;語句(2)是將a的值賦給指針變量p。7【單選題】(10分)正確答案:D下列程序中,主函數調用findmax函數返回數組中的最大值。在下劃線處應填入的是()。#include<stdio.h>findmax(int*a,intn){int*p,*s;for(p=a,s=a;p-a<n;p++)if(__________)s=p;return(*s);}intmain(){intx[5]={12,21,13,6,18};printf("%d\n",findmax(x,5));return0;}A.p>sB.a[p]>a[s]C.p-a>p-sD.*p>*s8【單選題】(10分)正確答案:C有下列程序,程序運行后的輸出結果是()。#include<stdio.h>voidfun(int*x,int*y);intmain(){intx=1,y=2;fun(&y,&x);printf("%d%d",x,y);return0;}voidfun(int*x,int*y){printf("%d%d",*x,*y);*x=3;*y=4;}A.2112B.1234C.2143D.12129【單選題】(10分)正確答案:A有下列程序段,程序段運行后的輸出結果是()。intt[]={0,1,2,3,4,5,6,7,8,9},*p;p=t;printf("%d\n",*p+9);A.9B.10C.0D.110【判斷題】(10分)正確答案:A若有下列語句:inta[4]={1,2,3,4},*p;p=a;則*p的值是3。A.錯B.對第十章單元測試1【單選題】(10分)正確答案:A若給出下列定義:charx[]="abcdefg";chary[]={'a','b','c','d','e','f','g'};則正確的敘述為()。A.數組x的長度大于數組y的長度B.數組x的長度小于數組y的長度C.數組x和

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論