union data
{int i;
char c;
float f;
}a;
int n;
則以下語句正確的是( 1 )。
1.a=5; 2.a={2,’a’,1.2}; 3.printf(“%d\n”,a); 4.n=a;
2:在C語言中,要求運算數必須是整形的運算符是(4 ).
1./
2.++
3.!=
4.%
3:C語言規定,數組名做實參時,它和對應形參之間的數據傳遞方式是:_3__
1.用戶指定傳遞方式
2.無傳遞
3.單向值傳遞
4.地址傳遞
4:以下有關宏替換的敘述不正確的是(4)。
1.宏替換不占用運行時間
2.宏名無類型
3.宏替換知識字符替換
4.宏名必須用大寫字母表示
5:若希望當A的值為奇數時,表達式的值為“真”,A的值為偶數時,表達式的值為“假”。則以下不能滿足要求的表達式是(3).
1.A%2==1
2.!(入%2==0)
3.!(A%2)
4.A%2
6:下面程序段的運行結果是( 1)。
char *s=”abcde”;
s+=2; printf(“%d”,s);
1.cde
2.字符’c’
3.字符’c’的地址
4.無確定的輸出結果
7:設有如下定義:
struct sk
{int n;
float x;
}data,*p;
若要使P指向data中的n域, 正確的負值語句的是(3 )。
1.p=&data.n;
2.*p=data.n;
3.p=(struct sk*)&data.n;
4.p=(struct sk*)data.n;
8:利用fseek函數的正確調用形式是(1 ).
1.改變文件的位置指針
2.文件的順序讀寫
3.文件的隨機讀寫
4.以上答案均正確
9:C語言結構體類型變量在程序執行期間(1).
1.所有成員壹直駐留在內存中
2.只有壹個成員駐留在內存中
3.部分成員駐留在內存中
4.沒有成員駐留在內存中
10:若有代數式3ae/bc,則不正確的C語言表達式是(3 )
1.a/b/c*e*3
2.3*a*e/b/c
3.3*a*e/b*c
4.a*e/c/b*3
11:以下程序段(4 ).
x=-?1; do{x=x*x;} while(! x);
1.是死循環
2.循環執行二次
3.循環執行二次
4.有語法錯誤
12:以下程序的運行結果是(4).
#include “stdio.h”
main()
{struct data
{int year,month,day;
}today;
printf(“%d\n”,sizeof(struct data));
}
1.6
2.8
3.10
4.12