?2022年湖北專升本C語言順序程序設(shè)計模擬題
摘要:本文是2022年湖北專升本C語言順序程序設(shè)計模擬題,共有28道選擇題和4道填空題、3道編程題,供大家參考。具體詳細內(nèi)容見下文。
一、單項選擇題
1.printf 函數(shù)中用到格式符%5s,其中數(shù)字 5 表示輸出的字符串占用 5 列,如果字符串長度大于 5,則輸出按方式( B )。
A) 從左起輸出該字符串,右補空格
B) 按原字符長從左向右全部輸出
C) 右對齊輸出該字串,左補空格
D) 輸出錯誤信息
2.已有定義 int a= -2; 和輸出語句 printf(“%8x”,a); 以下正確的敘述是( D )。
A) 整型變量的輸出形式只有%d 一種
B) %x 是格式符的一種,它可以適用于任何一種類型的數(shù)據(jù)
C) %x 是格式符的一種,其變量的值按十六進制輸出,但%8x 是錯誤的
D) %8x 不是錯誤的格式符,其中數(shù)字 8 規(guī)定了輸出字段的寬度
3.若 x, y 均定義成 int 型,z 定義為 double 型,以下不合法的 scanf 函數(shù)調(diào)用語句是( D )。
A) scanf(“%d %x, %le”, &x, &y, &z);
B) scanf(“%2d *%d, %lf”, &x, &y, &z);
C) scanf(“%x %*d %o”, &x, &y);
D) scanf(“%x %o%6.2f”, &x, &y, &z);(雙精度型用%le,或者%lf)
4.以下程序的輸出結(jié)果是( D)。
main( )
{ int k=17;
printf("%d,%o,%x\n",k,k,k);
}
A)17,021,0x11
B)17,17,17
B)17,0x11,021
D)17,21,11
5.下列程序的運行結(jié)果是( B)。
#include
main()
{ int a=2,c=5;
printf("a=%d,b=%d\n",a,c);
}
A) a=%2,b=%5
B) a=2,b=5
C) a=d,b=d
D) a=2,c=5
6.語句 printf("a\bre\'hi\'y\\\bou\n"); 的輸出結(jié)果是(C)。(說明:'\b'是退格符)
A) a\bre\'hi\'y\\\bou
B) a\bre\'hi\'y\bou
C) re'hi'you
D) abre'hi'y\bou
7.x、y、z 被定義為 int 型變量,若從鍵盤給 x、y、z 輸入數(shù)據(jù),正確的輸入語句是( B)。
A) INPUT x、y、z;
B) scanf("%d%d%d",&x,&y,&z);
C) scanf("%d%d%d",x,y,z);
D) read("%d%d%d",&x,&y,&z);
8.若變量已正確說明為 float 類型,要通過語句 scanf("%f %f %f ",&a,&b,&c); 給 a 賦于 10.0,b 賦予22.0,c 賦予 33.0,不正確的輸入形式是( B):
A) 10
B) 10.0,22.0,33.0
C) 10.0
D) 10 22
9.以下程序的輸出結(jié)果是(A)。
main()
{
int n;
(n=6*4,n+6),n*2;
printf(“n=%d\n”,n);
}
A) 24
B) 12
C) 26
D) 20
10.以下程序的輸出結(jié)果是( B )。
main()
{
int x=2,y,z;
x*=3+1;
printf(“%d,”,x++);
x+=y=z=5;
printf(“%d,”,x);
x=y=z;
printf(“%d\n”,x);
}
A) 8,14,1
B) 8,14,5
C) 8,13,5
D)9,14,5
11.下面程序的輸出結(jié)果是( C)。
main()
{
int x, y, z;
x=0;y=z=-1;
x+=-z---y;{(-z--)-y}
printf(“x=%d\n”,x);
}
A) x=4
B) x=0
C) x=2
D) x=3
12.設(shè) x 為 int 型變量,則執(zhí)行語句 x=10; x+=x-=x-x; 后,x 的值為( B)。
A) 10
B) 20
C) 40
D) 30
13.只能向終端輸出一個字符的函數(shù)是(B)。
A) printf 函數(shù)
B) putchar 函數(shù)
C) getchar 函數(shù)
D) scanf 函數(shù)
14.下列程序執(zhí)行后的輸出結(jié)果是(小數(shù)點后只寫一位)( A )。
main()
{ double d; float f; long l; int i;
i=f=1=d=20/3;
printf("%d %ld %f %f \n", i,l,f,d);
}
A) 6 6 6.0 6.0
B) 6 6 6.7 6.7
C) 6 6 6.0 6.7
D) 6 6 6.7 6.0
15.在下列敘述中,錯誤的一條是( C)。
A) printf 函數(shù)可以向終端輸出若干個任意類型的數(shù)據(jù)
B) putchar 函數(shù)只能向終端輸出字符,而且只能是一個字符
C) getchar 函數(shù)只能用來輸入字符,但字符的個數(shù)不限
D) scanf 函數(shù)可以用來輸入任何類型的多個數(shù)據(jù)
16.以下程序的輸出結(jié)果為(B)。
main()
{
char c1=‘a(chǎn)’,c2=‘b’,c3=‘c’;
printf(“a%cb%c\tc%c\n”,c1,c2,c3);
}
A) abc abc abc
B) aabb cc
C) a b c
D) aaaa bb
17.若輸入 12345 和 abc,以下程序的輸出結(jié)果是( B )。
main()
{
int a;
char ch;
scanf(“%3d%3c”,&a,&ch);
printf(“%d, %c” ,a, ch);
}
A) 123, abc
B) 123,4
C) 123,a
D) 12345,abc
18.以下程序的輸出結(jié)果是( D)。
main()
{
unsigned x1;
int b= -1;
x1=b;
printf(“%u”,x1);
}
A) %u
B) -1
C) %u-1
D) 65535
19.在 printf 函數(shù)中用來輸出十六進制無符號整數(shù)的格式字符是( B)。
A) d 格式符
B) x 格式符
C) u 格式符
D) o 格式符
20.設(shè) a=12、b=12345,執(zhí)行語句 printf(“%4d,%4d”,a,b)的輸出結(jié)果為( B)。
A)12, 123
B)12,12345
C)12, 1234
D) 12, 123456
21.以下程序的輸出結(jié)果是( C)。
#include
#include
main()
{
int a=1,b=4,c=2;
float x=10.5, y=4.0, z;
z=(a+b)/c+sqrt((double)y)*1.2/c+x;
printf(“%f\n”, z);
}
A) 14.000000 B) 15.400000 C) 13.700000 D) 14.900000
22.以下程序的輸出結(jié)果是( D)。
main()
{
int a=2, c=5;
printf(“a=%%d, b=%%d\n”, a, c);
}
A) a=%2, b=%5
B) a=%2, c=%5
C) a=%%d, b=%%d
D) a=%d, b=%d
23.請讀程序:
main()
{
int a;
float b, c;
scanf(“%2d%3f%4f”,&a,&b,&c);
printf(“\na=%d, b=%f, c=%f\n”, a, b, c);
}
若運行時從鍵盤上輸入 9876543210(表示回車),則上面程序的輸出結(jié)果是( C)。
A) a=98, b=765, c=4321
B) a=10, b=432, c=8765
C) a=98, b=765.000000, c=4321.000000
D) a=98, b=765.0, c=4321.0
24.若有定義:int x, y; char a, b, c; 并有以下輸入數(shù)據(jù)(此處代表回車,∪代表空格):1∪2A∪B∪C則能給 x 賦整數(shù) 1,給 y 賦整數(shù) 2,給 a 賦字符 A,給 b 賦字符 B,給 c 賦字符 C 的正確程序段是( D)。
A) scanf(“x=%d, y=%d”, &x, &y); a=getchar( ); b=getchar( ); c=getchar( );
B) scanf(“%d %d”, &x, &y); a=getchar( ); b=getchar( ); c=getchar( );
C) scanf(“%d%d%c%c%c”, &x, &y, &a, &b, &c);
D) scanf(“%d%d%c%c%c%c%c%c”, &x, &y, &a, &a, &b, &b, &c, &c);
25.下列可作為 C 語言賦值語句的是(C)。
A) x=3, y=5;
B) a=b=6
C) i--;
D) y=int(x);
26.設(shè) i 是 int 型變量,f 是 float 型變量,用下面的語句給這兩個變量輸入值:scanf(“i=%d, f=%f”, &i, &f);為了把 100 和 765.12 分別賦給 i 和 f,則正確的輸入為( B)。
A) 100
B) 100, 765.12
C) 100
D) x=100
27.以下敘述中正確的是( D)。
A) 輸入項可以是一個實型常量,例如:scanf(“%f”, 3.5);
B) 只有格式控制,沒有輸入項,也能正確輸入數(shù)據(jù)到內(nèi)存,例如:scanf(“a=%d, b=%d”);
C) 當(dāng)輸入一個實型數(shù)據(jù)時,格式控制部分可以規(guī)定小數(shù)點后的位數(shù),例如:scanf(“%4.2f”, &f);
D) 當(dāng)輸入數(shù)據(jù)時,必須指明變量地址,例如:scanf(“%f”, &f);
28.設(shè) x 和 y 均為 int 型變量,則以下語句:x+=y; y=x-y; x-=y; 的功能是( D)。
A) 把 x 和 y 按從小到大排序
B) 把 x 和 y 按從大到小排序
C) 無確定結(jié)果
D) 交換 x 和 y 中的值
二、填空題
1.下面程序的運行結(jié)果是i:dec=-4,oct=17774,hex=ffffc,unsigned=65532。
main()
{
short i;
i= -4;
printf(“\ni: dec=%d, oct=%o, hex=%x, unsigned=%u\n”, i, i, i, i);
}
2.若想通過以下輸入語句使 a=5.0,b=4,c=3,則輸入數(shù)據(jù)的形式應(yīng)該是 5.0,4,c=3。
int b,c; float a;
scanf("%f,%d,c=%d",&a,&b,&c);
3.下列程序的輸出結(jié)果是 16.00,請?zhí)羁铡?/p>
main()
{ int a=9, b=2;
float x=6.6, y=1.1,z;
z=a/2+b*x/y+1/2;(1/2=0,a/2=4)
printf("%5.2f\n", z );
}
4.在 printf 格式字符中,只能輸出一個字符的格式字符是%c;用于輸出字符串的格式字符是%s;以小數(shù)形式輸出實數(shù)的格式字符是%f;以標(biāo)準指數(shù)形式輸出實數(shù)的格式字符是%e。
三、編程題
1. 若 a=3, b=4, c=5, x=1.2, y=2.4, z= -3.6, u=51274, n=128765, c1=’a’, c2=’b’。想得到以下的輸出格式和結(jié)果,請寫出完整的程序(包括定義變量類型和設(shè)計輸出)。要求輸出的結(jié)果如下:
a=
x=1.200000, y=2.400000, z= -3.600000
x+y=
u=
c1= a
c2= B
2. 輸入一個華氏溫度,要求輸出攝氏溫度。公式為
輸出要有文字說明,取 2 位小數(shù)。
3. 編程序,用 getchar 函數(shù)讀入兩個字符給 c1、c2,然后分別用 putchar 函數(shù)和 printf 函數(shù)輸出這兩個
字符。
1. 解:
main()
{
int a=3, b=4, c=5;
long int u=51274, n=128765;
float x=1.2, y=2.4, z= -3.6;
char c1=’a’, c2=’b’;
printf(“\n”);
printf(“a=%2d b=%2d c=%2d\n”,a,b,c);
printf(“x=%8.6f , y=%8.6f, c=%9.6f\n”,x,y,z) ;
printf(“x+y=%5.2f
y+z=%5.2f z+x=%5.2f\n”,x+y,y+z,z+x) ;
printf(“u=%6ld n=%9ld\n”,u,n);
printf(“c1=%c or %d(ASCII)\n”,c1,c1);
printf(“c2=%c or %d(ASCII)\n”,c2,c2);
}
2. 解:
main()
{
float c, f;
printf(“請輸入一個華氏溫度:\n”);
scanf(“%f”,&f);
c=(5.0/9.0)*(f-32);
printf(“攝氏溫度為:%.2f\n”,c) ;
}
3. 解:
#include
main()
{
char c1, c2;
printf(“請輸入兩個字符給 c1 和 c2:\n”);
c1=getchar();
c2=getchar();
printf(“用 putchar 函數(shù)輸出結(jié)果為:\n”) ;
putchar(c1);
putchar(c2);
printf(“\n 用 printf 函數(shù)輸出結(jié)果為:\n”) ;
printf(“%c, %c\n”,c1,c2) ;
}
延伸閱讀
- 2022年湖北專升本電路模擬題(四)
- 2022年湖北專升本電路模擬題(三)
- 2022年湖北專升本電路模擬題(二)
- 2022年湖北專升本電路模擬題(一)
- 2022年湖北專升本高等數(shù)學(xué)模擬題(三)
- 2022年湖北專升本高等數(shù)學(xué)模擬題(二)
專升本微信公眾號
掃碼添加
專升本備考資料免費領(lǐng)取
去領(lǐng)取