浙大《程式設計基礎 C 》模擬試題主觀題解題指導

2021-08-13 11:38:45 字數 3935 閱讀 2940

浙大《程式設計基礎(c)》模擬試題主觀題解題指導(一)

一、填空題

1.在c程式設計中有下列語句:

scanf(「%d %d」,&x,&y);

程式執行時x要獲取值為50,y要獲取值為100,即從鍵盤輸入為

考核知識點:整形數的輸入,參見p36

參***:50 100

2. 在c程式設計中,如果要在檔案kk.c中使用函式int find(int a,int x,int n),而此函式定義在檔案file.h中,則在檔案包含預處理命令

考核知識點:c程式的構成,參見p11

參***:kk.c #include 「file.h」

3.三角形的三條邊分別用a、b、c表示,請寫出判斷此三角形為等邊三角形的表示式

考核知識點:邏輯運算子,參見p25

參***:a==b&&b==c

4.已有定義:

char *str[5]=;

程式要輸出字串」abcd」,請寫出用str表示的printf語句

考核知識點:指標陣列,參見p199

參***:printf("%s",*(str+1));

5.有以下結構體定義:

struct kkk

y[3]=;

請寫出能表示數字10的表示式

考核知識點:結構體型別的陣列,參見p236

參***:y[1].x

6.在c程式設計中要計算x的平方根,並賦值給y,請寫出此表示式

考核知識點:系統函式的應用(數學函式),參見p124

參***:double y=sqrt(x);

7.已有定義:

int i;

double sum=0;

在達到精度0.0001時計算表示式sum=1/1+1/2+1/3+1/4+…+1/n的值,請寫出此語句塊

考核知識點:for迴圈,參見p53

參***:

int i;

double sum=0;

int n=0;

scanf("%d",&n);

for(i=1;i<=n;i++)

二、程式閱讀題

1. 閱讀下列程式,如果程式執行時從鍵盤輸入7860並回車,寫出程式的執行結果。

#include

int main( )

while(y);

printf("\n");

return 1;

}考核知識點:do-while迴圈,以及算術運算子,分別參見p50和p23

參***:0687

2.閱讀下列程式,程式執行時如從鍵盤輸入字元』a』,寫出程式的執行結果。

#include

void main()

printf("%d ",k);

printf("\n");

}考核知識點:switch的應用,參見p79

參***:5

3. 閱讀下列程式,寫出程式的執行結果。

#include

int x=10;

int t( )

void main( )

考核知識點:for迴圈,函式呼叫,以及算術運算子,分別參見p53、p130、p23

參***:39

三、程式設計題

1.請編寫一程式,程式的功能是從鍵盤輸入乙個整數n,輸出1~n之間所有的偶數。

考核知識點:for迴圈和if語句的應用,參見p53和p69

參***:

#include

void main( )

}2.設計乙個程式,程式的功能是從鍵盤輸入一些字元,把這些字元存放在檔案kk.txt中,當輸入字元』#』時程式結束。

考核知識點:檔案中字元的讀寫函式,參見p168

參***:

#include "stdio.h"

#include "stdlib.h"

int main()

while((ch=getchar())!='#')

fputc(ch,fp);

fclose(fp);

return 0;

}浙大《程式設計基礎(c)》模擬試題主觀題解題指導(二)

一、填空題

1.在c程式設計中,如要在檔案kk.c中使用檔案aa.c中的函式int find(int a,int x,int n),則在檔案包含預處理命令

考核知識點:c程式的構成,參見p11

參***:kk.c #include 「aa.c」

2.有一字元變數ch,寫出判斷ch為數字字元的表示式。

考核知識點:邏輯運算子,參見p25

參***:ch>='1'&&ch<='9'

3.已有定義:

struct kk

y[2]=;

請寫出能表示字串」1234」的表示式。

考核知識點:結構體型別的陣列,參見p236

參***:y[1].st

4.已有定義:int x=012;要求輸出為:**** x=10 &&

請寫出用x表示的printf語句。

考核知識點:整型數的輸出,參見p35

參***:printf("**** x=%d &&",x);

5.已有定義:char s1[100]=」浙江大學」,s2[100]=」2009遠端教育」,如果要用s1、s2構成乙個字串」 浙江大學2009遠端教育」,寫出應用函式strcat實現的語句。

考核知識點:字串處理函式,參見p125

參***:char *s=strcat(s1,s2);

6.有迴圈語句:

y=0;

x=10; //表示式1

while(x<=20) //條件表示式

寫出與它等價的for語句。

考核知識點:for迴圈和while迴圈,分別參見p53、p44

參***:

for(int y=0,x=10;x<=20;x++)

y=y+x;

7.從鍵盤輸入乙個整數n,呼叫函式sum求s=1/1+1/2+1/3+1/4+…+1/n,在main函式中輸出結果,請填空。

#include

double sum( a )

int main()

考核知識點:函式的應用,參見p130

參***:s+=(double)1/i; scanf(「%d」,&n);

二、程式閱讀題

1. 閱讀下列程式,寫出程式的執行結果。

#include

int main( )

考核知識點:整型數的輸出,參見p35

參***:x=16 y=8

2、 閱讀下列程式,寫出程式的執行結果。

#include

void main()

,tmp,k;

for (k=0;k<10/2;k++)

for (k=0;k<10;k++)

printf(「%d 「,a[k]);

printf(「\n」);

}考核知識點:for迴圈,參見p53

參***:7 6 9 -8 6 10 -5 0 4 2

3、 閱讀下列程式,寫出程式的執行結果。

#include

int t( )

void main( )

考核知識點:函式的應用,static儲存型別的變數和作用,分別參見p130和p152

參***:19

三、程式設計題

1.請編寫一程式,程式的問題是從鍵盤輸入一批整數,求偶數的和,當輸入0時結束,最後輸出和。

考核知識點:while迴圈、if語句以及整型數的輸入,分別參見p44、p69以及p36

參***:

#include

void main( )

{ int sum=0;

int x;

scanf("%d",&x);

while(x){

if(x%2==0)

sum+=x;

scanf("%d",&x);

C語言程式設計模擬試題

說明 1.本卷共四大題,共7頁.2.本試卷時間120分鐘,滿分100分.1.一 單項選擇題 每題1分,共20分,每小題只有乙個正確答案,請將你認為正確的答案填在對應的括號內。1.以下程式段中i最後的值是 int i 10 switch i 1 a 11 b 13 c 12 d 14 2.若x是int...

C 面試題 C 基礎程式設計題

case 8 cout auguest break case 9 cout september break case 10 cout october break case 11 cout november break case 12 cout december break cout 29.22.程式...

C語言程式設計模擬試題A 附答案

一 單項選擇題 每題2分,共20分 1 下列有關c語言的敘述中錯誤的是 d a c語句必須以分號結束 b 任何乙個c程式中有且只有乙個主函式 c 復合語句在語法上可被看作一條語句 d c程式中對資料的任何操作都可由運算子實現 2 以下不能定義為使用者識別符號的是 c a main b hj c 2o...