C語言模擬試題1
一、選擇題:本題共 10 小題,滿分 20 分。
1、以下選項中不能作為C語言合法常量的是 ( )
A)‘cd’ B)0.1e+6 C)“\a” D)‘\011’
2、以下不能正確表示代數式2ab/cd的C語言表示式是 ( )
A)2*a*b/c/d B)a*b/c/d*2 C)a/c/d*b*2 D)2*a*b/c*d
3、以下定義語句中正確的是 ( )
A)inta=b=0; B)charA=65+1, b= ‘b’;
C)floata=1,*b=&a, c=&b; D)doublea=0.0;b=1.1;
4、設有如下程式段
char s[20]= “Bejing”, *p;
p=s;
則執行p=s;語句後,以下敘述正確的是 ( )
A)可以用*p表示s[0]
B)s陣列中元素的個數和p所指字串長度相等
C)s和p都是指標變數
D) 陣列s中的內容和指標變數p中的內容相等
5、執行以下程式段後,w的值為 ( )
int w=’A’,x=14,y=15;
w=((x||y)&&(w<’a’));
A)-1 B)NULL C)1 D) 0
6、若定義:int a[2][3]={0,2,4,6,8,10};,以下描述正確的有 ( )
A)*(a+1)為元素6的地址 B)*(a[1]+1)的值為2
C、*(a+1)+2的值為8 D)a[0]與a的值不相同
7、‘\t’表示什麼? ( )
A)字串常數 B)識別符號 C)變數 D)字元常量
8、以下表示式取值正確的是 ( )
A)6>5結果為6 B)6&&5結果為7 C)6||5結果為7 D)6<5結果為0
9、若有定義語句:
double x[5]={1.0,2.0,3.0,4.0,5.0},*p=x; 錯誤引用x陣列元素的是 ( )
A)*p B)x[5] C)*(p+1) D)*x
10、設變數均已正確定義並且賦值,以下與其他三組輸出結構不同的一組語句是
A、x++; printf(“%d\n”, x); B、n=++x; printf(“%d\n”, n);
C、++x; printf(“%d\n”, x); D、n=x++; printf(“%d\n”, n);
二、填空題:本題共 10 小題,滿分 20 分。
1、判斷一個字元ch是數字字元的表示式是 。
2、若N是一個常量,則int (*p)[N];表示定義一個含有N個元素的一位陣列的指標變數,而int *p[N];表示 。
3、若有定義:int m=5,y=2; 則計算表示式y+=y-=m*=y;後的y的值是 。
4、C語言規定了以字元 作為字串結束標誌。
5、若有定義int x=3,y=2; floata=2.5,b=3.5; 則表示式(x+y)%2+(int)a/(int)b的值是 。
6、若有定義:int a[3][4]={{1,2},{0},{4,6,8,10}}; 則初始化後,a[2][1]的值是 。
7、若有定義:char s[]=“\t\r\\\0will\n”; 則strlen(s)= 。
8、C語言規定,在一個源程式中,main函式的位置 。
9、設變數a和b已定義為int型變數,若要通過scanf(“a=%d,b=%d”, &a, &b ); 語句分別給a和b輸入1和2,則正確的資料輸入內容是 。
10、設a,b,c都是整型變數,如果a的值為1,b的值為2,則執行c=a++||b++;語句後,變數b的值是 。
三、應用題:本題共 5 小題,滿分 25 分。
1、寫出下列程式的執行結果:
#include <stdio.h>
void main()
{ int i,j=4;
for( i=j; i<=2*j; i++ )
switch( i%j )
{ case 0:
case 1: printf( ”*”); break;
case 2: printf( “#” );
}
}
2、寫出下列程式的執行結果:
#include<stdio.h>
int f(int m)
{ staticint n=0;
n+=m;
return n;
}
void main( )
{ intn=0;
printf("%d,", f(++n));
printf("%d\n", f(n++));
}
3、寫出下列程式的執行結果:
#include <stdio.h>
void exch(int t[] )
{ t[0]=t[5]; }
void main()
{ intx[10]={1,2,3,4,5,6,7,8,9,10}, i=0;
while(i<=4) { exch(&x[i]); i++; }
for( i=0; i<5; i++ ) printf(“%d ”, x[i] );
printf(“\n”);
}
4、寫出下列程式的執行結果:
#include <stdio.h>
void main()
{ int a[3][4]={0,1,2,3,4,5,6,7,8,9,10,11};
printf("%8d%8d",a, *a);
printf("%8d%8d\n",&a[0][0],a[0][0]);
printf("%8d%8d",a+1,*(a+1));
printf("%8d%8d\n",*(a[1]+1),*(*(a+2)+1));
}
假設陣列a的首地址是2000,每個陣列元素佔4個位元組,則執行結果為:
5、寫出下列程式的執行結果:
#include <stdio.h>
#include <string.h>
typedef struct
{ char name[9];
char sex;
int score[2];
} STU;
STU f(STU a)
{ STUb={"Zhao",'m',85,90};
int i;
strcpy(a.name, b.name);
a.sex=b.sex;
for (i=0; i<2; i++)
a.score[i]=b.score[i];
return a;
}
void main( )
{ STU c={"Qian",'f',95,92},d;
d=f(c);
printf("%s,%c,%d,%d\n",d.name,d.sex,d.score[0],d.score[1]);
printf("%s,%c,%d,%d\n",c.name,c.sex,c.score[0],c.score[1]);
}
四、程式設計題:本題共 3 小題,滿分 35 分。
1、隨機產生100個100~200之間的整數,程式設計實現分別統計十位數上0~9的數字個數。(10分)
2、編寫函式fun(),計算結果作為函式值返回,n作為形參傳入,函式的功能是:根據計算s。(10分)
3、定義一個包含學號、姓名、年齡的學生結構體,編寫函式實現:(15分)
(1)輸入10個學生的基本資訊(Input函式);
(2)按年齡從小到大的順序進行排序(Sort函式);
(3)輸出學生資訊(Output函式)。
相關文章
- C語言上機測試模擬題-1C語言
- C語言模擬試題2C語言
- C語言模擬試題3C語言
- C語言模擬試題4C語言
- C語言模擬試題5C語言
- C語言模擬試題6C語言
- C語言上機測試模擬題2C語言
- C語言50題之模擬實現atof、atoiC語言
- C語言實戰!!!:商城系統模擬C語言
- 關於c語言模擬c++的多型C語言C++多型
- c語言模擬Python的命名引數C語言Python
- (C語言)簡單明瞭的 陣列模擬棧+ (C++)陣列模擬棧C語言陣列C++
- C語言的考試題型C語言
- PAT-B 1059 C語言競賽【模擬】C語言
- C語言考試題及答案(一)C語言
- ChatGPT模擬Go語言面試 (一次小的測試)ChatGPTGo面試
- C語言50題之百度筆試題C語言筆試
- C語言程式設計題T1C語言程式設計
- C#專案—模擬考試C#
- C語言指標和陣列筆試題C語言指標陣列筆試
- 2021-08-21-C站初級考試C1-模擬試卷程式設計題解析-06程式設計
- 自己用C語言寫的一個模擬退火演算法C語言演算法
- 標準C語言1C語言
- 高階C語言1C語言
- C語言實驗1C語言
- C語言作業1。C語言
- 程式語言擬人化(1):Java、C++、Python、Ruby、PHP、C#、JSJavaC++PythonPHPC#JS
- c語言與字串相關的庫函式的模擬實現C語言字串函式
- 模擬實現不受限制的字串函式--C語言版字串函式C語言
- 作業系統:程式狀態轉換模擬,C語言實現作業系統C語言
- 資料結構之C語言模擬整數陣列實現資料結構C語言陣列
- 「csp模擬試題202009-1」稱檢測點查詢 C/C++C++
- 簡單機器語言的模擬 (轉)
- 試題 演算法提高 質數2(C語言)演算法C語言
- 程式設計師C語言經典筆試題程式設計師C語言筆試
- 初三奧賽模擬測試1
- C語言單元測試C語言
- 個人收藏oracle模擬題part 1Oracle