二 填空題
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)準(zhǔn)指數(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= <空格>3 <空格><空格> b= <空格> 4<空格><空格> c= <空格>5
x=1.200000, y=2.400000, z= -3.600000
x+y=<空格>3.60<空格><空格> y+z = -1.20<空格><空格>z+x= -2.40
u=<空格>51274<空格><空格>n=<空格><空格><空格>128756
c1= a <空格>or<空格>97(ASCII)
c2= B <空格>or<空格>98(ASCII)
2. 輸入一個華氏溫度,要求輸出攝氏溫度。公式為C=5/9(F-32)
輸出要有文字說明,取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) ;
}
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |