偶数,输出2个数的立方值;否则,输出原数。 程序:
#include
main( ) {
int a, b;
printf(“input a b:”);
scanf(“%d %d”, &a, &b);
if(a%2==1 && b%2==1) printf(“\\n %d, %d”, a*a, b*b);
else if(a%2==0 && b%2==0) printf(“\\n %d, %d”, a*a*a, b*b*b); else printf(“\\n %d, %d”, a, b); }
⑵ 编程实现:输入1个不多于四位的正整数, ① 求出它是几位数; ② 分别打印出每一位数字; ③ 按逆序打印出该数,例如原数是321输出123 程序:
#include
main() {
int n,n1,n2,n3,m; printf(“input nnn:”); scanf(“%d”, &n); if(n>99) { m=3;
n1=n; n2=n0/10; n3=n/100;
printf(“\\n %d, %d, %d, %d ”, m, n1, n2, n3); printf(“\\n %d ”, n1*100+n2*10+n3);
}
else if(n>9) { m=2;
n1=n; n2=n/10;
printf(“\\n %d, %d, %d ”, m, n1, n2); printf(“\\n %d ”, n1*10+n2);
}
else { m=1; n1=n;
printf(“\\n %d, %d ”, m, n1); printf(“\\n %d ”, n1);
}
}
⑶ 有一分段函数:
x (x<1) y = 2x-1 (1≤x<10) 3x-11 (x≥10)
请编写一程序,输入一个x,打印输出y值。 程序:
#include
main() {
float x,y;
printf(“input x:”); scanf(“%f”, &x); if(x>=10) y=3*x-11;
else if(x>=1 && x<10) y=2*x-1; else y=x;
printf(“\\n %f”, y); }
习题5
1、 选择题:
⑴ C ⑵ B ⑶ B ⑷ C ⑸ C ⑼ A ⑽ C ⑾ C ⑿ C ⒀ A
2、读程序写结果: ⑴ 运行结果: *#*#
⑵ 运行结果: x=11111 x=1112 x=113 x=14 x=5
⑶ 运行结果: 011122
3、编程
⑴ 找出100~200之间的不能被3整除的数 程序:
#include
⑹ B ⑺ B ⒁ D ⒂ C ⑻ B main( ) { int i;
for(i=101; i<200; i++)
if(i%3!=0) printf(“ %d \\n”, i); }
⑵ 已知四位数a2b3能被23整除,编程求出此数 程序:
#include
main( ) {
int a,b;
for(a=1; a<=9; a++) for(b=0; b<=9; b++)
if((a*1000+200+b*10+3)#==0)
printf(“%d\\n ”, a*1000+200+b*10+3);
}
⑶ 将输入的数字字串(回车结束)转换为对应的整数 程序:
#include
#include
char c=getchar( ); int n;
long int s=0; while(c!=‘\\n’)
{if(isdigit(c)){n=c-?0?; s=s*10+n;} c=getchar( );} printf(“s=%d ”, s); }
⑷ 求100以内最小的自然数n,使1*1+2*2+3*3+…+n*n>5500 程序1:
#include
main( ) (
int n,s=0;
for(n=1; s<5500; n++) s=s+n*n;
printf(“%d\\n ”, n); }
程序2:
#include
main( ) (
int n,s=0;
for(n=1; n<100; n++)
{s=s+n*n; if(s>5500) break;} printf(“%d\\n ”, n); }
⑸ 求1/1!+1/2!+….+1/10! (结果保留10位小数) 程序:
#include
main( ) {
int i, n=1; double s=0.0;
for(i=1; i<=10; i++) {
n=n*i; s=s+1.0/n; }
printf(“s=.10lf ”, s); }
⑹ 求1000以内的完数。完数就是其真因子的和等于其本身的数。 程序:
#include
main( ) {
int a, i, s;
for( a=1; a<1000; a++ ) {
s=0;
for( i=1; i if(a==s) printf(“%d\\n”, a); } } ⑺ 输出九九乘法表(正三角形式) 程序: #include

