C語言程式設計第4章節練習題
阿新 • • 發佈:2020-12-20
練習4-1
請寫出滿足以下條件的邏輯表示式
(1)判斷ch是否為小寫英文字母
(ch>=‘a’)&&(ch<=‘z’)
(2)判斷ch是否為英文字母,分大小寫
(ch>=‘a’)&&(ch<=‘z’)||(ch>=‘A’)&&(ch<=‘Z’)
(3)3<=x<=5
3<=x&&x<=5
(4)x為0
!x
練習4-2
數學式3<=x<=5,寫成C語言表示式"3<=x<=5",對嗎?為什麼?
練習4-3~4-4
複習點:C語言規定邏輯表示式的執行結果如下:
(1)對於任何邏輯表示式a&&b,若a的值為假,則不再計算b的值,直接得到a&&b的值為0;若a的表示式為真,則計算b的值,根據b的值決定a&&b的結果。
(2)對於任何邏輯表示式a||b,若a的值為真,則不再計算b的值,直接得到a&&b的值為1;若a的表示式為假,則計算b的值,根據b的值決定a&&b的結果。
練習4-5
統計學生平均成績與及格人數:輸入一個正整數n,再輸入n個學生的成績,計算平均成績,並統計所有及格學生的人數。
#include<stdio.h>
int main()
{
int a,n,i,count=0;
float sum=0,average;
printf("請輸入學生人數:\n");
scanf("%d",&n);
printf("請輸入學生成績:\n");
for(i=1;i<=n;i++)
{
scanf("%d",&a);
if(a>= 60)
count++;
sum=sum+a;
}
average=sum/n;
printf("平均成績為%.3f,及格人數為%d",average,count);
}
練習4-6
從鍵盤輸入一個字元,如果是小寫字母,則將其轉換為大寫字母輸出。如果是大寫字母,則將其轉換成小寫字母輸出。如果是其他字元,則原樣輸出。
複習點:小寫字母轉換大寫字母:ch-32;大寫字母轉換小寫字母:ch+32;大小寫之間ASCII碼值相差32。
#include<stdio.h>
int main()
{
char ch;
ch=getchar();
if((ch>='a')&&(ch<='z'))
printf("%c",ch-32);
else if ((ch>='A')&&(ch<='Z'))
printf("%c",ch+32);
else
printf("%c",ch);
}
練習4-7
根據如下分段函式編寫程式,輸入一個x值,輸出相應的y值。
#include<stdio.h>
int main()
{
float x,y;
printf("請輸入x的值:\n");
scanf("%f",&x);
if(x>-5&&x<0)
y=x-1;
else if(x==0)
y=x;
else if(x>0&&x<8)
y=x+1;
else
y=10;
printf("y=%.3f",y);
}
練習4-9
請將例4-12的分段函式使用巢狀的if—else語句實現。
#include<stdio.h>
int main()
{
float x;
int y;
scanf("%f",&x);
if(x>0)
y=1;
else
{
if(x==0)
y=0;
else
y=-1;
}
printf("%d",y);
}
其他都為問答題,且較為簡單,是書本上的一些語法使用注意事項。