《C程式設計快速進階大學教程》第五章程式題
阿新 • • 發佈:2018-11-05
1.編寫程式求三個整型數的和、積和平均值,輸入三個數的值,輸出結果。
#include <stdio.h>
#include <stdlib.h>
int main()
{
int a,b,c;
scanf("%d %d %d",&a,&b,&c);
float p = (a+b+c)/3;
printf("這三個數是:%d %d %d\n",a,b,c);
printf("和: %d\n",a+b+c);
printf("積: %d\n",a*b*c);
printf("平均值:%f\n" ,p);
return 0;
}
2.編寫程式求圓柱體底面周長、圓柱體的表面積和體體積。要求輸入圓柱的底面直徑和高,輸出計算結果,取小數點後2位數字,輸入輸出時要求有文字說明。
#include <stdio.h>
#include <stdlib.h>
#define PI 3.14
int main()
{
float r,h;
float c,f,v;
printf("請輸入底面直徑和高:\n");
scanf("%f %f",&r,&h);
//底面周長
c = PI*r;
//表面積
f = PI*r*2 + PI*r*h;
//體積
v = PI*r*r*h/4;
printf("底面周長:%f 表面積:%f 體積:%f",c,f,v);
return 0;
}
3.編寫程式實現華氏溫度和攝氏溫度的轉換。輸入一個華氏溫度F,要求輸出攝氏溫度C。輸出結果要有文字說明,取小數點後4位數字。轉換公式為:
c=5×(F-32)/9
#include <stdio.h>
#include <stdlib.h>
int main()
{
float F,C;
scanf("%f",&F);
C = 5*(F-32)/9;
printf("%.4f",C);
return 0;
}
4.編寫程式進行字母的大小寫轉換。輸入一個大寫字母,輸出對應的小寫字母。提示:若輸入小寫字母則直接輸出,若輸入的不是大寫字母則提示錯誤。
#include <stdio.h>
#include <stdlib.h>
/*
編寫程式進行字母的大小寫轉換。輸入一個大寫字母,輸出對應的小寫字母。提示:若輸入小寫字母則直接輸出,若輸入的不是大寫字母則提示錯誤。
*/
int main()
{
char c;
c = getchar();
if(c <= 'Z' && c>= 'A')
putchar(c+'a'-'A');
else
putchar(c);
return 0;
}
5.[選做]將字串譯成密碼,密碼規律是用原來的字母后面的第4個字母代替原來的字母,例如,字母”A“後面4個字母是”E“,用”E“代替”A“;字母‘x‘經轉換後變為‘b’;因此”China“應譯為”Glmre“。編寫一個程式,輸入一個長度不超過10的字串,輸出經過加密運算後的密碼。
提示:可利用5個字元變數,分別儲存‘C’,‘h’,‘i’,‘n’,‘a’,也可用一個字元陣列儲存字串“China”,其字元可以通過初始化、賦值獲得,也可由使用者輸入。
#include <stdio.h>
#include <stdlib.h>
int main()
{
char c[10];
printf("輸入長度小於10的字串:(用回車結束輸入)\n");
int i;
//初始化
for(i=0;i<10;i++){
c[i] = ' ';
}
char ch;
//輸入字串
int k=0;
while ((ch = getchar()) != '\n'){
c[k] = ch;
k++;
}
int j;
for(j=0;j<k;j++){
//一個邏輯判斷,因為W,X,Y,Z,w,x,y,z分別對應A,B,C,D,a,b,c,d
if((c[j] <='V' && c[j]>='A') || (c[j]<='v' && c[j]>='a')){
printf("%c",c[j]+4);
}
else if((c[j]<='Z' && c[j]>='W')||(c[j]<='z' && c[j]>='w')){
printf("%c",c[j]-22);
}
else
printf("%c",c[j]);
}
return 0;
}