日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) >

四川大学 设计专业 C语言必修,四川大学C语言2001年真题_跨考网

發(fā)布時(shí)間:2024/9/27 101 豆豆
生活随笔 收集整理的這篇文章主要介紹了 四川大学 设计专业 C语言必修,四川大学C语言2001年真题_跨考网 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

一、單項(xiàng)選擇題(在每小題的四個(gè)備選答案中,選出一個(gè)正確的答案,并將其號(hào)碼寫在答題紙上。請(qǐng)注意注明題號(hào)。每小題1分,共計(jì)6分)

1、‘\t’表示什么?

①字符串常數(shù)②標(biāo)識(shí)符③變量④字符常量

答案:④

2、對(duì)宏定義不正確的描述是哪一個(gè)?

①在進(jìn)行宏定義時(shí),可以引用已經(jīng)定義的宏名,可以層層置換

//可以引用已經(jīng)定義了的宏名,可以層層置換

②宏名的有效范圍包括本文件的任何位置

//宏名的有效范圍定義命令之后到本源文件結(jié)束,可以用#define終止宏定義的作用域

③寵定義不是語(yǔ)句,不必在行末加分號(hào)

//是預(yù)處理定義語(yǔ)句

④對(duì)程序中雙引號(hào)括起來(lái)的字符串,即使與宏名相同,也不進(jìn)行置換

3、若定義static char s[20]=”computer”;則執(zhí)行語(yǔ)句x = strlen(s);之后,x的值為多少?

①20 ②9 ③8 ④19

//strlen函數(shù)計(jì)算char*型字符串的長(zhǎng)度的時(shí)候,并不包含末尾的\0;

4、以下哪一個(gè)表達(dá)式取值是正確的?

①6>5結(jié)果為6 ②6&&5結(jié)果為7

③6||5結(jié)果為7 ④6<5結(jié)果為0

5、如定義

enum weekday {one, two, thr, fou, fiv};

enum weekday working;

以下哪個(gè)是不正確的枚舉變量的使用?

①working = thr; ②working =2;

③working = (enum weekday)2;

④working = (enum weekday) (5-3);

//不能對(duì)其賦值

6、下列說(shuō)法中正確的是哪一個(gè)?

①sizeof (char)是結(jié)果為整型的表達(dá)式

②sizeof (char)是一個(gè)不合法的表示形式

③sizeof (char)是一種函數(shù)調(diào)用

④sizeof (char)是結(jié)果為實(shí)型的表達(dá)式

二、閱讀程序,并回答問(wèn)題(共12分)

1、下列程序的輸出是什么?(3分)

# include

void main ()

char * aplha [6] =﹛“ABC”,“DEF”,“GHI”,“JKL”,“MNO”,“PQR”﹜;

char **p;

int i;

p = aplha;

for (i = 0; i<4; i++)

printf (“%s”, p[i]);

printf (“\n”);

//輸出結(jié)果

ABCDEFGHIJKL

剛好是字符串?dāng)?shù)組里面的前四個(gè)元素的內(nèi)容連接起來(lái)

2、下列程序?yàn)槭裁礋o(wú)法將用戶輸入的三個(gè)整數(shù)按從小到大排序輸出?應(yīng)該如何修改?(6分)

# include

void swap (int x, int y)

int t = x;

x = y;

y = t;

void main ()

int a, b, c;

scanf (“%d, %d, %d”, &a, &b, &c);

if (a>b) swap (a, b);

if (a>c) swap (a, c);

if (b>c) swap (b, c);

printf (“%d, %d, %d”, a, b, c);

//函數(shù)swap采用值傳遞,雖然將形參x和y交換了,但是并不影響到實(shí)參。將值傳遞改成指針傳遞就可以了。

C函數(shù)參數(shù)采用值傳遞方式,雖然swap函數(shù)將形式參數(shù)x和y的值進(jìn)行了調(diào)換,但是影響不到相應(yīng)的實(shí)在參數(shù)。所以在主函數(shù)中,通過(guò)調(diào)用sawp函數(shù)調(diào)換a和b(或a或c,或b和c)的值是根本達(dá)不到目的的。

修改:

(1)(2分)

void swap (int *x, int*y)

int t = *x;

*x = *y;

*y = t;

(2)(2分)主函數(shù)

if(a>b) swap(&a,&b);

if(a>c) swap(&a,&c);

if(b>c) swap(&b,&c);

3、假設(shè)系統(tǒng)為基本整型量分配2個(gè)字節(jié),為字符型量分配1個(gè)字節(jié)。下列程序完成的功能是什么?(3分)

# include

union

int n;

char ch [2];

﹜u;

void main ()

int m;

scanf (“%d”,&m);

u.n = m;

printf (“\n%u, %u”,u.ch[0], u.ch[1]);

//該程序的功能,取用戶輸入的整數(shù)值的高字節(jié)和低字節(jié),并按照任意整數(shù)的低字節(jié)和高字節(jié)分別輸出。

三、程序設(shè)計(jì)題(12分)

假設(shè)一個(gè)文本文件中保存著100個(gè)整數(shù),請(qǐng)將這100個(gè)整數(shù)按從小到大的順序?qū)懙搅硪粋€(gè)文本文件中去,并且在新文件中每10個(gè)整數(shù)占一行。源文件名和目標(biāo)文件名通過(guò)命令行參數(shù)獲取。

分?jǐn)?shù)分配:

變量定義2分

命令行參數(shù)處理1分

文件打開1分

文件讀2分

排序3分

文件寫2分

文件關(guān)閉1分

# include

void main(int argc, char *argv[])

FILE *fin, *fout;

Int a [100], i, j, t;

if(argc!=3)

printf (“ You forgot to enter a filename\n”);

return;

fin = fopen (argv[1], “r”);

fout = fopen (argv[2], “w”);

for (i = 0; i<100; i++)

fscanf (fin, “%d”, &a[i]);

for (i = 0; i<99; i++)

for (i = 0; i<99-i; i++)

if (a[j]>a[j+1])

﹛t = a[j]; a[j] = a[j+1]; a[j+1]=t;﹜

for (i = 0; i<100; i++)

if (i%10 = 0)

fprintf (fout, “%s”, “\n”);

fprintf (fout, “%d”, a[i]);

fclose (fin);

fclose (fout);

創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎(jiǎng)勵(lì)來(lái)咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎(jiǎng)

總結(jié)

以上是生活随笔為你收集整理的四川大学 设计专业 C语言必修,四川大学C语言2001年真题_跨考网的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。