人天天都學到一點東西,而往往所學到的是發現昨日學到的是錯的。 以下是小編為大家搜尋整理了C語言作業練習,希望能給大家帶來幫助!更多精彩內容請及時關注我們應屆畢業生考試網!
一、思考題
1、順序結構的語句有哪些?
表示式語句,空語句,複合語句
2、從程式控制的角度看,複合語句是單一的語句嗎?
是
3、C語言中的語句有哪幾類?C語句與其他語言中的語句有哪些異同?
表示式語句,空語句,複合語句,控制語句。C語言與其他語言的語句型別基本相同,只是語法有所區別。
4、怎樣區分表示式和表示式語句?C語言為什麼要設表示式語句?什麼時候用表示式,什麼時候用表示式語句?
在C語言中,只要在任何表示式的結尾加上分號“;”就構成了表示式語句。表示式語句使C語言更加靈活。當我們使用表示式語句時一般只關心它的作用而不關心該表示式的值。如puts("hello");這個表示式語句,我們關心的是輸出hello這個結果而不是puts函式的`返回值。
5、C語言的輸入輸出功能是表示式語句嗎,為什麼?
是,因為輸入輸出功能是函式呼叫語句。
二、選擇題
1、以下符合C語言語法的賦值表示式是B)d=9+e,f=d+9
2、下面程式執行時的輸出結果是D)a=8
main(){
int a=5;
printf(“a=%dn”,++a+2);
}
3、putchar函式可以向終端輸出一個D)字元或字元變數值
4、執行以下程式時,從鍵盤輸入25,13,10(回車),則輸出結果是A)a1+a2+a3=48
main() {
int a1,a2,a3;
scanf(“%d,%d,%d”,&a1,&a2,&a3);
}
5、若有以下定義和語句
char c1=?b?,c2=?e?;
printf(“%d,%cn”,c2-c1,c2-?a?+?A?);
則輸出結果是B)3,E
6、下面程式的執行結果是A)10
main(){
int a,b;
a=20;b=10;
a+=a+b;
a-=a-b;
printf(“%dn”,a);
}
7、使下列程式輸出”123,456,78”,由鍵盤輸出資料,正確的輸入是C)123,45678
int i,j,k;
scanf(“%d,%3d%d”,&i,&j,&k);
printf(“%d,%d,%dn”,i,j,k);
三、程式設計題
1、若a=3,b=4,c=5,x=1.2,y=2.4,z=-3.6,u=51274,n=128765,c1=’a’,c2=’b’,想得到以下的輸出格式和結果,請寫出程式(包括定義變數型別和設計輸出)。要求輸出結果如下:
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=128765
c1=’a’or 97(ascii)
c2=’b’or 98(ascii)
#include
void main()
{
int a=3,b=4,c=5;
double x=1.2,y=2.4,z=-3.6;
long u=51274,n=128765;
char c1='a',c2='b';
printf("a=%d b=%d c=%dn",a,b,c);
printf("x=%lf,y=%lf,z=%lfn",x,y,z);
printf("x+y=%.2f y+z=%.2f z+x=%.2fn",x+y,y+z,z+x);
printf("u=%ld n=%ldn",u,n);
printf("c1='%c'or%d(ascii)n",c1,c1);
printf("c2='%c'or%d(ascii)n",c2,c2);
}
2、請寫出下面程式的輸出結果
main(){
int a=5,b=7;
float x=67.8564,y=-789.124;
char c=’a’;
long n=1234567;
unsigned u=65535;
printf(“%d%dn”,a,b);
printf(“%3d%3dn”,a,b);
printf(“%f,%fn”,x,y);
printf(“%-10f,%10fn”,x,y);
printf(“8.2f,%8.2f,%.4f,%.4f,%3f,%3fn”,x,y,x,y,x,y);
printf(“%e,%10.2en”,x,y);
printf(“%c,%d,%o,%xn”,c,c,c,c);
printf(“%ld,%lo,%xn”,n,n,n);
printf(“%u,%o,%x,%dn”,u,u,u,u);
printf(“%s,%5.3sn”,”computer”,”computer”);
}
57
5 7
67.856400,-789.124023
67.856400 ,-789.124023
8.2f, 67.86,-789.1240,67.8564,-789.124023,67.856400
6.785640e+001,-7.89e+002
a,97,141,61
1234567,4553207,12d687
65535,177777,ffff,65535
computer, com
3、用下面的scanf函式輸入資料,使a=10,b=20,c1=’a’,c2='a',x=1.5.,y=-3.75,z=67.8,請問在鍵盤上如何輸入資料?
scanf(“%5d%5d%c%c%f%f%*f,%f”,&a,&b,&c1,&c2,&x,&y,&z);
0001000020aa1.5 -3.75 1,67.8
4. 設圓球半徑為r=2.5,求圓球表面積、圓球體積。用scanf輸入資料,輸出計算結果,輸出時要求有文字說明,取小數點後兩位數字。請程式設計序。
#include
#define PI 3.14
main()
{
float r,s,v;
printf("輸入半徑:");
scanf("%f",&r);
s=4*PI*r*r;
v=4.0/3*PI*r*r*r;
printf("圓球面積是:%.2fn",s);
printf("圓球體積是:%.2fn",v);
}
5.輸入一個華氏溫度,根據公式為c=5/9(f-32)計算並輸出攝氏溫度,輸出時要求有文字說明,取2位小數。請程式設計序。
#include
main()
{
float f,c;
printf("輸入華氏溫度:");
scanf("%f",&f);
c=5.0/9*(f-32);
printf("攝氏溫度是:%f",c);
}
6.輸入三角形的三邊長,求三角形面積。請程式設計序。
#include
#include
main()
{
float a,b,c,s,area;
}
7.編寫一個能引起short型變數溢位的程式。
#include
main()
{
short a;
a=21344211;
printf("a=21344211,溢位後a=%dn",a);
}
8.編寫一個程式,顯示下列10個轉義字元:a,b,n,r,t,v,',",,? #include
main()
{
printf("a,b,n,r,t,v,',",\,?");
}
9.編寫一個程式,輸入一個小寫字母,輸出其對應的大寫字母。 #include
main()
{
char a,A;
printf("輸入一個小寫字母,將輸出一個相應大寫字母:"); a=getchar();
A=a+'A'-'a';
putchar(A);
putchar('n');
}
printf("輸入三角形的三條邊長:"); scanf("%f%f%f",&a,&b,&c); if(a+b>c&&a+c>b&&b+c>a) { //海倫公式 s=1.0/2*(a+b+c); area=sqrt(s*(s-a)*(s-b)*(s-c)); printf("面積是:%f",area); } else printf("該三角形不存在!");