C语言程序设计编程精选44例Word文件下载.docx
- 文档编号:15702839
- 上传时间:2022-11-15
- 格式:DOCX
- 页数:94
- 大小:40.31KB
C语言程序设计编程精选44例Word文件下载.docx
《C语言程序设计编程精选44例Word文件下载.docx》由会员分享,可在线阅读,更多相关《C语言程序设计编程精选44例Word文件下载.docx(94页珍藏版)》请在冰豆网上搜索。
=b)
{
if(b>
=c)
printf("
%d%d%d"
c,b,a);
else
if(a>
printf("
b,c,a);
else
printf("
b,a,c);
}
if(b<
c)
a,b,c);
if(a<
a,c,b);
c,a,b);
}
问题2:
输出是m的倍数或n的倍数、但不是m和n的公倍数的数
输出1~k之间是m的倍数或n的倍数、但不是m和n的公倍数的数,其中1<
=m,n<
k<
100。
输入三个整数,依次为k、m、n。
从小到大输出符合题意的所有整数,两数之间用一个空格分开。
1523
23489101415
难点在于输出格式的控制:
空格在数的中间,学会用循环时边界情况的特殊处理。
intk,m,n,i,a;
k,&
m,&
n);
if(m>
=n)
a=n;
a=m;
%d"
a);
for(i=a+1;
i<
=k;
i++)
if(i%m==0||i%n==0)
{
if(i%m==0&
&
i%n==0)
printf("
"
);
else
%d"
i);
}
问题3:
A+BProblem
计算a+b,0<
=a,b<
1000。
输入有多对整数a和b组成,每对a和b占一行,a,b用空格分开。
每行输出一个a+b的值,顺序与输入对应。
12
1020
3
30
OJ系统上测试输入结束符为EOF(EndOfFile),其值为-1。
用scanf()把文件所有内容读完后,会读到EOF,所以可以用来判断输入是否完成,测试时可以用Ctrl+Z产生EOF。
本题解法参看FAQ。
inta,b;
for(;
scanf("
%d%d"
b)!
=EOF;
)
%d\n"
a+b);
问题4:
A+BProblem(II):
Input/OutputPratice
输入的第一行是一个整数N,后面有N对整数a和b,每对a和b占一行,a,b用空格分开。
每行输出一个a+b的和,顺序与输入对应。
2
N给出了测试样例数,用for循环处理方便。
intn,a,b,i;
for(i=1;
=n;
{
scanf("
b);
问题5:
A+BProblem(III):
当测试样为00时表示输入结束,00不参与运算。
00
练习break的使用。
if(a==0&
b==0)
break;
问题6:
A+BProblem(IV):
每个格式样例之间用一个空行分隔开。
1535
50
由于输出的和比空行多一个,所以全部计算放在一个循环里是不行的,必须要特殊处理开头或者结尾。
inti,a,b;
i=1;
i++;
=-1;
\n%d\n"
问题7:
n个数的最大值和最小值
问题描述
找出n个数中最大的数和最小的数,并将它们的值输出出来。
输入为n+1个整数,都在int类型范围内。
这些数可能用若干空格或者换行符分隔开。
输入的第1个数为n,表示后续有n个数输入。
从输入的第2个数开始,求出直到第n+1个数中最大的数和最小的数。
输出为两行,格式见sample。
301-1
Themaximumnumberis1.
Theminimumnumberis-1.
分隔符是空格还是回车都是空白符,对scanf("
)来说没有区别;
先读入n,然后用for循环就很容易控制读入n个数的过程。
inta,n,i,min,max;
a);
min=a;
max=a;
n;
max)
max=a;
if(a<
min)
min=a;
printf("
Themaximumnumberis%d.\n"
max);
Theminimumnumberis%d."
min);
问题8:
成绩的等级
把百分制的考试成绩转换成五级制的成绩:
90~100:
Excellent
80~89:
Good
70~79:
Average
60~69:
Pass
0~59:
Failing
不在0~100之间的输入是非法数据,输出“Error”。
输入多行,每行一个整数。
输入所对应的成绩等级。
-1
81
92
35
68
72
100
Error
用switch语句解决这个问题比较方便。
inta;
a)!
0||a>
100)
Error\n"
switch(a/10)
{
case0:
case1:
case2:
case3:
case4:
case5:
Failing\n"
break;
case6:
Pass\n"
case7:
Average\n"
case8:
Good\n"
case9:
case10:
Excellent\n"
}
问题9:
只有一个二元运算符的表达式运算
编程序读入并计算只有一个二元运算符的表达式的值。
用到的二元运算符有:
“+”、“-”、“*”、“/”、“%”,与C语言的语法一致。
每行输入一个表达式,格式为:
二个整型的操作数a和b,中间用一个符号分开,这个符号就是运算符。
测试样例不存在除数为0的情况。
输入以a和b为0,且用一个空格分开结束。
每行对应输入的运算符为“+”、“-”、“*”、“/”、“%”,则计算a+b、a-b、a*b、a/b、a%b的值;
否则输出“invalidop”。
33+5
8*9
2.2
1-6
17/3
9%3
38
invalidop
-5
5
教材上有非常相似的例题可以参考。
math.h>
voidmain()
charc;
for(i=0;
=100;
{for(;
%d%c%d"
c,&
c=='
'
gotoloop;
switch(c)
case'
+'
:
break;
-'
a-b);
*'
a*b);
/'
a/b);
%'
a%b);
default:
invalidop\n"
loop:
i=101;
问题10:
求100以内的素数
素数是只能被1和自身整除的正整数,根据数学定义1不是素数。
素数也叫质数。
输入为两个整数m和n,满足0<
=m<
=n<
=100。
从大到小输出m~n之间的所有素数,一个素数一行。
如果m~n之间没有素数,则不输出任何数。
输出的所有数在两行“=====”之间。
212
=====
11
7
利用素数的数学规律可以很容易的解出此题,题目给出的数据范围是关键。
intma
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言程序设计 编程 精选 44