C语言 - 中国石油大学(华东)c语言上机题及答案大全- 副本(2)

2019-04-13 19:43

ch=getchar();

if(ch>=97&&ch<=122)

{ch=187-ch;putchar(ch);} else if(ch>=65&&ch<=90) {a=ch%2;

if (a==1) (char)a=(ch+1)/2+ch; else (char)a=ch/2+ch; putchar(a);}

else if(ch>=48&&ch<=57) {ch=ch/10+ch; putchar(ch);} else putchar(ch); printf(\ }

4.7 判断某年某月的天数

一年有365天,有的月份有31天,有的有30天,2月份闰年的时候是29天,非闰年的时候是28天。现在要求从键盘上输入一个年份和月份,输出其对应的天数。

#include main()

{ int year,month,days;

scanf(\ switch(month) { case 1: case 3: case 5: case 7: case 8: case 10:

case 12: days=31;break; case 4: case 6: case 9:

case 11:days=30;break;

case 2:if((year % 4 ==0) && (year % 100 !=0) ||(year % 400==0)) days=29; else days=28; }

printf(\}

4.8 花多少钱买衣服

周末商场促销呢,某品牌服装既可以买套装,也可

以买单件。若买的不少于50套,每套80元;不足50套的每套90元,只买上衣每件60元,只买裤子每条45元。编写程序,输入计划购买的上衣数量 a 和裤子的数量 b ,计算并输出应该付的款 m 。

#include void main() {

int a,b,y;

scanf(\ if(b<=a&&b<50) y=90*b+(a-b)*60; if(b<=a&&b>=50) y=80*b+(a-b)*60; if(a=50) y=80*a+(b-a)*45; printf(\}

4.9 到邮局去寄包裹

你去邮局给朋友寄礼物。发现邮局对邮寄包裹的费用是这样规定的:如果包裹长宽高任意一个尺寸超过1米,或重量超过30千克,不予邮寄;对可以邮寄的包裹每件收手续费 0.2 元,不同重量的邮资按下表计算: 重量(千克) 收费标准(元) 小于10 0 . 80

大于等于10但不超过20 0 . 75

大于等于20但不超过30 0 . 70

编写程序,输入包裹的长、宽、高尺寸和重量,输出所需的邮资(输出结果中包含两位小数即可),超出尺寸或重量的输出 \” . #include void main() {

float a,b,c,m,y;

scanf(\ if(a>1||b>1||c>1||m>30) printf(\ else {

- 6 -

if(m<10) y=0.80*m+0.2; else if(m<20) y=0.75*m+0.2; else y=0.70*m+0.2; printf(\ } }

4.10 输出星期几的英文表示

输入用数字(1--7)表示的星期几,输出星期几的英文表示,输入的数字有误,输出单词\回车)\。 #include void main() {

int a;

scanf(\ switch((int)(a)) {

case 1:printf(\ case 2:printf(\ case 3:printf(\ case 4:printf(\ case 5:printf(\ case 6:printf(\ case 7:printf(\ default:printf(\ } }

5.1 输出一行星号

编写程序在一行中输出 N 个星号。 输入: N值

输出: 一行中N个星号 #include int main() {

int n,i;

scanf(\

for(i=0;i

5.2 打印平行四边形

输入图形的高 n 和首字符 c ,输出如下例( n=5 ,c='A' )所示的图形 . ABCDE BCDEF CDEFG DEFGH EFGHI

输入:整数n例如 5 和某个字符例如 A 输出:高为5和首字符A 的平行四边形 #include void main() { int n,m,i,d; char p,t;

scanf(\ for(m=0;m

for(i=0;i

printf(\ }

for(d=0;d

t=p+d+m; printf(\ } for(i=0;i

printf(\ }

printf(\ } }

5.3 空心的倒三角型

背景:请根据要求打印可空心倒三角形。 输入: 输入三角形的高度(h >0)。

输出:打印相应的空心倒三角形。图样参见测试用例。

#include #include int main() {int h,i,j,k,m,n; scanf(\ if((h>1)&&(h%2!=0)) {

- 7 -

for(i=1; i<=(2*h-1); i++) { printf(\ } printf(\ for(j=1; j<=(h-2); j++) { for(k=1; k<=j; k++) { printf(\ } printf(\ for(m=1; m<=(2*h-3-2*j); m++) { printf(\ } printf(\ printf(\ } for(n=1;n<=(h-1);n++) { printf(\ } printf(\ } else printf(\ return 0; }

选做 5.4 打印实心正方形

5.1题中你已经打印了一行*号,这次在屏幕上输出一个由星号组成的 n 行 n 列的正方形。

程序输入 n 值,输出如下例( n=4 )所示的高和上底均为 n 的正方形: **** **** **** ****

#include #include int main() {

int a=1,n,b; scanf(\

while(a<=n) {

b=1; do {

printf(\ b++; }

while(b<=n); printf(\ a++; }

return 0; }

选做 5.5 空心字符菱形

输入:菱型起始字母和菱形的高度。

输出:参看测试用例,打印空心的由字符组成的菱形。

#include #include int main() {

char ch;

int n,a=1,b,c;

scanf(\ while(a<=n) {

b=1;

while(b<=n-a) {

printf(\ b++; }

printf(\ c=1; if(a>=2) {

while(c<=2*a-3) {

printf(\ c++; }

printf(\ }

- 8 -

ch=ch+1; printf(\ a++; }

a=1; ch=ch-2; while(a<=n-1) {

b=1;

while(b<=a) {

printf(\ b++; }

printf(\ c=1;

if(a<=n-2) {

while(c<=2*n-2*a-3) {

printf(\ c++; }

printf(\ }

ch=ch-1; printf(\ a++; }

return 0; }

选做 5.6 输出一个字母K吧!

输入一个整数n,输出图形K。如n=4时,输出如下图形。 * * * * * * * * * * * * *

#include #include int main() {

int n,i=1,j;

scanf(\ while(i<=n-1) {

j=1;

printf(\ while(j<=n-i) {

printf(\ j++; }

printf(\ i++; }

printf(\ i=1;

while(i<=n-1) {

j=1;

printf(\ while(j<=i) {

printf(\ j++; }

printf(\ i++; }

return 0; }

选做 5.7 输出X图形

输入 n 值,输出下例( n=3 )所示的图形: * * * * * * * * *

输入:整数n(例如3) 输出:如上图所示X 形图形 #include #include int main() {

int n,i=1,j,k;

- 9 -

scanf(\ while(i<=n-1) {

j=1;

while(j<=i-1) {

printf(\ j++; }

printf(\ k=1;

while(k<=2*n-2*i-1) {

printf(\ k++; }

printf(\ j=1;

while(j<=i-1) {

printf(\ j++; }

printf(\ i++; } i=1;

while(i<=n-1) {

printf(\ i++; }

printf(\ i=1;

while(i<=n-1) {

printf(\ i++; }

printf(\ i=1;

while(i<=n-1) {

j=1;

while(j<=n-i-1) {

printf(\ j++; }

printf(\ k=1;

while(k<=2*i-1) {

printf(\ k++; }

printf(\ j=1;

while(j<=n-i-1) {

printf(\ j++; }

printf(\ i++; }

return 0; }

选做 5.8 输出图形 编程,输入 n 值,输出下例( n=5 )所示的高为 n 的图形 :

#include #include int main() {

int n,i=1,j,k,l; scanf(\ while(i<=n-1) {

j=1;

while(j<=i) {

printf(\ j++; } k=1;

while(k<=2*n-2*i-1) {

- 10 -


C语言 - 中国石油大学(华东)c语言上机题及答案大全- 副本(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:高中历史总结 - 图文

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: